我有一个JDesktopPane
,它创建了几个JInternalFrame
组件。桌面保留了一些每个内部框架需要知道的变量,因此每次单击内部框架时,它都需要检查桌面变量并复制它们。创建内部框架时,我可以复制它们,但是一旦创建了框架,我不知道如何让它在每次单击时检查变量。
问题是,如果我在内部框架上使用侦听器,我就不能使用桌面的方法,并且从桌面我不知道如何检查内部框架是否已被单击(因为它在运行时创建内部框架)。我想是在JDesktopPane
中使用一种方法来复制变量,并在每次单击任何内部框架时调用(例如,如果单击桌面的任何部分),但我不知道当内部框架被点击时,桌面会触发什么事件(如果有的话)。
那么,桌面窗格(或任何地方)上是否有任何方法可以在每次选择内部框架时激活?
但我不知道当内部框架被破坏时,桌面会触发什么事件
您可以使用InternalFrameListener
.
阅读 Swing 教程中关于如何编写和 InternalFrameListener 的部分,了解更多信息和工作示例。
我无法使用桌面的方法
为什么不呢?
您可以使用内部框架的getDesktopPane()
方法获取桌面窗格。