我有JTextField
显示如下的行号:2或2.1或2.1.1等。我希望JTextField
的大小始终保持不变但我想要字体要减小/增加的大小,以便文本始终完全显示并填充文本字段。
我想知道是否有一种简单的方法可以做到这一点(我不介意使用不同的摇摆组件)或者我是否必须手动操作,即通过检查文本的大小和更改文本字段大小?
我显然不愿意这样做,因为尺寸增量可能不是一个很好的数字,例如2.1至2.1.1。
答案 0 :(得分:2)
随着字体缩小,JTextField变小。
文本字段的首选大小取决于字体。因此,随着字体大小的变化,大小会增加/减少。覆盖getPreferredSize()
的{{1}}方法以提供您自己的实现。
可能是这样的:
JTextField
答案 1 :(得分:1)
我不知道任何执行此操作的组件,但您可以通过扩展jTextField
并使用它来自行编写
FontMetrics.stringWidth()
确定字体大小(例如,在重载setText
上)。