JDesktopPane ContainerListener和JInternalFrame图标化事件

时间:2014-05-06 15:16:59

标签: java swing

所以我有一个desktoPane,它有containerListener。我有这个containerListener来添加或删除内部框架时添加或删除任务栏中的按钮。一切都很好,而我没有点击最小化图标( - )。很明显,当你最小化internalFrame时,它会抛出两个事件:

  1. 删除了InternalFrame;
  2. 添加了DesktopIcon
  3. 当您点击恢复时,它又有两个事件:

    1. DesktopIcon已删除;
    2. 添加了InternalFrame
    3. 因此,当您单击最小化时,任务栏上的按钮消失。所以问题是 - 当您自己将内部框架添加到desktopPane时,如何区分“正常”事件以及这些图标化事件?

1 个答案:

答案 0 :(得分:2)

请勿使用ContainerListener。这是一个用于观察组件层次结构的相当低级的界面。而是使用JInternalFrame.addInternalFrameListenerInternalFrameListener接口触发了打开,关闭,最小化和恢复事件的专用方法。