java - setFont 和 setPreferredSize 之间的最终结果差异

标签 java swing fonts layout-manager preferredsize

在布局管理器中,当我使用 setPreferedSize 时,它增加了 JLabel 的大小,但在之后仅显示一个单词,例如 (JLabel = Name)使用setPreferedSize JLabel变得像N...。但是 setFont 工作正常..

谁能说出 setFontsetPreferredSize 行为之间的确切区别吗?

最佳答案

But setFont works correctly..

没错,这是您应该使用的唯一方法。当您使用 setFont() 方法时,组件负责确定首选大小。该组件将考虑字体、文本、边框等信息来确定其首选大小。

当您调用 setPreferredSize() 时,您是在告诉组件您了解得更多,但实际上您并没有这样做,因为您只是进行猜测。如果您的猜测太小,您会看到“...”,因为没有足够的空间来绘制整个文本。

不要使用 setPreferredSize()!

关于java - setFont 和 setPreferredSize 之间的最终结果差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27819962/

相关文章:

java - 滑下金字塔时通过位移来决定向左或向右的方向

java - 使用 Grids java 格式化 JTable

java - GridBagLayout - 意外添加/和更改间距

css - 字体不能与 Sass 一起使用

swift - 是否可以在 SwiftUI 中使用带有自定义字体的动态字体大小?

java - 在 Java 中使用数组

java - spring boot,获取Docker暴露端口用于eureka注册

java - 第一次单击 X 时 JDialog 未关闭

ios - 如何在 Swift 中根据字体的行高计算行间距?

java - 元件坐标