作为标题,我想通过按钮上的文本内容动态调整 JButton 的大小,以确保文本在多语言下整体显示。但我不知道如何获取 JButton 上文本的宽度。
JButton btn = new JButton("Sure");
在此先感谢您的帮助。
我想通过按钮上的文本内容动态调整 JButton 的大小,以确保文本在多语言下整体显示。但我不知道如何获取 JButton 上文本的宽度。
您不需要明确地执行此操作,因为如果您正确使用它们,布局管理器会为您处理这些。如果您在 GUI 呈现后将 JButton 添加到 GUI,则只需重新验证并重新绘制获取按钮的容器,其余的由布局管理器完成。
请注意,如果此建议对您没有帮助,那么您可能需要告诉我们更多关于您的程序和问题的信息。
如果你真的需要文本的宽度,你可以用:
int width = btn.getFontMetrics(btn.getFont()).stringWidth( "I want the width of this String" );
但除非你正在做一些深奥的事情,正如其他海报所指出的那样,你可能实际上并不需要它。还要注意(文本的宽度)!=(JButton 的宽度),进一步使这个答案毫无用处!