Java - 如何从JPanel获取新旧大小?

时间:2014-07-10 14:38:46

标签: java swing

在JPanel上调整大小后,是否有生成的ComponentEvent中的任何字段或方法返回旧的和新的大小?

如果没有,有没有办法获取此信息?

当用户拖动并放下角落时,面板会随窗口一起调整大小。

3 个答案:

答案 0 :(得分:1)

不,当调整大小时,无法获得旧尺寸。此外,该事件不会跟踪此信息。

唯一的解决方案是在调整大小后保存字段中的大小。如果pack()没有触发侦听器更新值,则可能需要提取一次。

答案 1 :(得分:0)

ComponentEvent您可get the Component调整大小。从那里你可以得到尺寸(至少是实际尺寸)。

答案 2 :(得分:-1)

在此示例中,我调用JPanel“面板”:

int oldWidth, oldHeight;
int newWidth, newHeight;

//Before resize
oldWidth = panel.getWidth();
oldHeight = panel.getHeight();

//After resize
newWidth = panel.getWidth();
newHeight = panel.getHeight();