MyJPanel (JPanel 확장)이 있습니다. 각 MyJPanel 개체에는 GetID() 메서드가 있습니다. 생성자를 사용하여 ID를 설정했지만 (SetID() 메서드도 있음) 크기를 설정 한 다음 Jscrollpane을 만들어 JInternalFrame에 추가합니다. 모든 프레임은 ArrayList<JInternalFrame> arr
입니다. JInternalframe의 내용에서 메서드를 가져옵니다.
JInternalFrame frame = new JInternalFrame("Inner frame",true,true,true,true);
final MyJPanel panel = new MyJPanel(f.getAbsolutePath(),count);
panel.setSize(panel.getWidth()/6,panel.getHeight()/6);
JScrollPane pane = new JScrollPane(panel);
pane.setPreferredSize(new Dimension(theDesktop.getWidth()/2, theDesktop.getHeight()/2));
frame.getContentPane().add(pane, BorderLayout.CENTER);
내가 FrameListener 및 방법의 internalFrameClosing 방법
public void internalFrameClosing(InternalFrameEvent e) {
int index = panel.GetID();//get index of panel окна
if (index == arr.size())
arr.remove(index);//remove last element
else{
//reset all indexes of JInternalFrames' MyJPanel
}
}
를 추가 추가 프레임을 삭제하려면하지만 프레임 중 하나가 때문에 삭제 된 경우 한 JInternalFrame의 배열 MyJPanels 값을 다시 설정하는 방법을 모른다 1) MyJPanel은 JScrollPane에 있습니다. method SetID 2) JScrollPane가 JInternalFrame에있는 경우 3) JInternalFrame이 배열에 있습니다. SetID() 메서드는 arr.get(i)
에 없습니다.