0

我将所有 JInternalFrames 保存在 arraylist 中

 ArrayList<JInternalFrame> arr;

所以每一帧都有它的索引。每个帧都包含 JScrollPane。MyJPanel(extends JPanel) 保持框架的索引。

JInternalFrame frame = new JInternalFrame("Frame "+Integer.toString(count),true,true,true,true);
MyJPanel panel = new MyJPanel(f.getAbsolutePath(),count);
JScrollPane pane = new JScrollPane(panel);
pane.setPreferredSize(new Dimension(theDesktop.getWidth()/2,theDesktop.getHeight()/2));
frame.getContentPane().add(pane, BorderLayout.CENTER);
frame.pack();

如何获取已关闭 JInternalFrame 的索引并从 arraylist 中删除此帧?覆盖一些关闭方法?

4

1 回答 1

4

您可以为内部框架设置默认关闭操作,然后在关闭视图时调用触发事件的doDefaultCloseAction 。

在此之前将您自己添加为此事件的侦听器,在收到事件后执行必要的操作。

于 2012-04-15T21:46:09.097 回答