java - 我能否在显示之前获得正确的 JComponent 大小?

标签 java swing jcomponent

JComponent 的大小是什么时候计算的?在屏幕上显示之后还是之前? 如果我在 .setVisible(true) 之前发送 .getSize() 消息,它会给我正确的答案吗? 谢谢

最佳答案

我有时会在调试时检查我的组件的大小,例如,找出为什么我看不到它们。在大多数情况下,当 GUI 被呈现 时,这些尺寸就会实现。当 pack()setVisible(true) 在顶级窗口上调用时,可能会发生这种情况。我通常的方法调用顺序是先调用 pack(),因为这会告诉布局管理器布置他们负责的组件,并设置组件和 GUI 的大小,然后调用setLocationRelativeTo(null) 使我的 GUI 居中,然后调用 setVisible(true) 来显示它。

关于java - 我能否在显示之前获得正确的 JComponent 大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7142609/

相关文章:

java - 使用java代码清除缓存

java - 如何让 Graphics2D 对象在 Java 中准确跟随鼠标指针?

java - JComponent 的通用监听器

java - Cardview OnClickListener 中的图像

Java - NotSerializedException(保存对象)

java - 将参数传递给方法是否与创建对象相同?

java - 在 JTextField 和 setText 中撤消

java - JTextArea 中的行

java - 如何在 JGraphX 中将组件背景设置为特定颜色?

java - 通过 javax.swing.text.Element 从 JTextPane 获取一个组件?