当组件失效或触发重新绘制时获得通知



我想在组件被重新绘制时调用事件侦听器(JComponent)。我读过不同的事件监听器,但似乎没有一个是正确的无效或重绘。有什么办法吗?

为什么我想这样做:我试图在控件发生变化时得到通知,以便触发跟踪更改的方法(如在文件已更改时,"您想要保存更改吗?")。

它的另一个用途是手动调用非添加到容器中但已绘制的组件的自定义布局管理器(这个有点复杂,它用于GUI编辑器程序)。

为什么我想这样做:我试图在控件发生变化时得到通知,以便触发跟踪更改的方法(如在文件已更改时,"您想要保存更改吗?")。

通常,您可以在GUI模型类中跟踪对已编辑文件的更改。每次您的模型添加或删除一个字符时,您都要在模型中设置一个稍后检查的脏标志。

另一种用法是手动调用未添加到容器中但已绘制的组件的自定义布局管理器(这有点复杂,它用于GUI编辑器程序)。

你对Swing的理解似乎是倒退的。组件不驱动布局。布局安排组件。

下面是一个基于Swing字符的文本编辑器的例子。

这是一个关于GUI构建器编辑器的Stack Overflow问题

最新更新