在版面管理器中,当我使用setPreferedSize
时,它会增加JLabel
的大小,但在使用JLabel = Name
后仅显示一个词,例如(setPreferedSize JLabel
)会变得像N...
。但是setFont
正常工作。
谁能说出setFont
和setPreferredSize
的行为之间的确切区别?
最佳答案
但是setFont可以正常工作。
确实,这是您应该使用的唯一方法。当您使用setFont()方法时,该组件负责确定首选大小。该组件将考虑字体,文本,边框等信息,以确定其首选大小。
当您调用setPreferredSize()时,您是在告诉组件您知道的更多,而您却不知道,因为您只是在猜测。如果您的猜测太小,则会看到“ ...”,因为没有足够的空间来绘制整个文本。Don't use setPreferredSize()!