2010-08-31 59 views

回答

5

这会让你确切的宽度,但你会想要一些额外的填充像素,使它漂亮。

myJTextField.getFontMetrics(myFont).stringWidth(myString); 
4

这种方法只适用于不成比例的字体。否则,你必须在字符集中找到'最大'的字符,以使该盒子足够宽以容纳这种类型的10个字符。

一个实用的方法是“猜测”一个宽字符并计算宽度,这样你就有了一个很好的可行性,即文本字段对于通常的输入来说足够大了。适应lins314159示例代码:

myJTextField.getFontMetrics(myFont).stringWidth("wwwwwwwwww); 
0
JTextField textField = new JTextField(10); 

将大小的文本框会自动的UI。我相信它实际上使用“W”作为尺码字符,所以大多数情况下它会比你需要的大。如果你想要宽度准确,然后使用等宽字体。

相关问题