Java 如何使按钮与文本大小完全相同?
有没有可能让一个Java 如何使按钮与文本大小完全相同?,java,swing,jbutton,Java,Swing,Jbutton,有没有可能让一个JButton精确地获取文本的大小?因为默认情况下,JButton将在其文本周围有少量填充(水平和垂直)。我想删除该填充。JButton默认有边框,您可以删除它: button.setBorder(null); 如果要保留边框,请减小边距(请参见)用清除按钮中的边距。 删除边框会产生删除边框的副作用。如果只想清除边距,请使用该方法将边距全部设置为零 button.setMargin(new Insets(0,0,0,0)); 谢谢,很抱歉问了这么简单的问题。谢谢,我发疯了,
JButton
精确地获取文本的大小?因为默认情况下,JButton
将在其文本周围有少量填充(水平和垂直)。我想删除该填充。JButton
默认有边框,您可以删除它:
button.setBorder(null);
如果要保留边框,请减小边距(请参见)用清除按钮中的边距。 删除边框会产生删除边框的副作用。如果只想清除边距,请使用该方法将边距全部设置为零
button.setMargin(new Insets(0,0,0,0));
谢谢,很抱歉问了这么简单的问题。谢谢,我发疯了,想找到那个该死的填充物的位置。-1这个答案去掉了边界。这不是OP要求的。请参阅另一个答案,以在不删除边框的情况下清除边距。有趣的是,设置
btn.setbOrderPaint(false)
不起同样的作用。你会想的。谢谢你,这个提示非常有用!在我的系统上,在使用这种方法之前,我测量了文本左右16个像素的水平填充,之后测量了15个像素。除了按钮之外,似乎还有其他东西在添加填充。也许是按钮为自己创建的标签?我认为解决方案取决于L&F和系统。我在macOS Big Sur上使用默认的L&F和JDK 11。