1

作为标题,我想通过按钮上的文本内容动态调整 JButton 的大小,以确保文本在多语言下整体显示。但我不知道如何获取 JButton 上文本的宽度。

                 JButton btn = new JButton("Sure");

在此先感谢您的帮助。

4

2 回答 2

3

我想通过按钮上的文本内容动态调整 JButton 的大小,以确保文本在多语言下整体显示。但我不知道如何获取 JButton 上文本的宽度。

您不需要明确地执行此操作,因为如果您正确使用它们,布局管理器会为您处理这些。如果您在 GUI 呈现后将 JButton 添加到 GUI,则只需重新验证并重新绘制获取按钮的容器,其余的由布局管理器完成。

请注意,如果此建议对您没有帮助,那么您可能需要告诉我们更多关于您的程序和问题的信息。

于 2013-07-19T02:01:07.047 回答
1

如果你真的需要文本的宽度,你可以用:

int width = btn.getFontMetrics(btn.getFont()).stringWidth( "I want the width of this String" );

但除非你正在做一些深奥的事情,正如其他海报所指出的那样,你可能实际上并不需要它。还要注意(文本的宽度)!=(JButton 的宽度),进一步使这个答案毫无用处!

于 2013-07-19T02:09:54.823 回答