我搜索一个方法,如果jpanel显示在显示器上,则调用该方法,因为我必须获取面板的实际大小。
有什么建议吗?
答案 0 :(得分:2)
您是否尝试过将ComponentListener添加到JPanel?这将是我在componentShown(...)
方法中使用我的代码开始的地方。为了实现这一点,我认为您必须在将JPanel添加到显示器后调用setVisible(true)
。
另一个选项是在GUI上调用pack()
或setVisible(true)
后查询其大小。
修改强>
你说:
我将面板添加到gui设计师..当窗口弹出时,我想现在jpanel的实际大小,因为它可以改变它。
如果您想知道窗口“弹出窗口时”所持有的组件的大小,请在窗口中添加WindowListener并从windowOpened(...)
检查组件的大小方法
编辑2
然后你说:
在我有实际尺寸之后,我会添加一些与该面板尺寸相关的子面板。所以例如尺寸/ 6&子面板现在的尺寸高度为6。
一个解决方案:最好不要设置任何尺寸,而是使用正确的布局管理器组合,然后让它们根据规则设置合适的尺寸。
答案 1 :(得分:0)
使用函数setVisible(true);
设置可见性