我有一个名为TablePanel的类来自JPanel。当我单击框架另一部分的复选框时,此类的实例有时会调整自身大小。
是否存在某种事件监听器或类似内容,以便我可以追踪实际导致此TablePanel调整大小的事件?
我尝试将以下内容添加到TablePanel的构造函数中:
addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
System.out.println("TablePanel evt: " + evt);
}
});
但是当调整大小时,这不是'触发'。
答案 0 :(得分:2)
我猜您正在寻找ComponentListener的componentResized事件。
虽然我不确定你为什么需要这个。面板的布局管理器应该处理面板上任何组件的大小调整/布局。
这不会为您提供更改的实际来源。源事件很可能是框架被调整大小,然后布局管理器完成它们的工作。
当我单击框架另一部分的复选框时,此类的实例有时会调整自身大小。
我从未见过这种情况。单击复选框不应更改其大小,因此面板上的组件没有理由再次布局。你必须有一些奇怪的代码。发布证明问题的SSCCE。