2010-11-27 5 views
1

だから私はと呼ばれるJPanelの束を持っているJFrameを持っています。 venPanelをクリックすると、JFrameはレイアウトの東に新しいJPanelを追加します(JFrameは境界線レイアウトを使用するため)。私はvenPanelクラスでこれをどのように達成できますか?現在venPanelためmouseClickアクションリスナーを次のように実装されますJFrame内のJPanelをクリック

GUIVenDetails私は JFrameの東に追加したい JPanelある
@Override 
public void mouseClicked(MouseEvent arg0) { 
    try { 
     GUIVenDetails vendetail = new GUIVenDetails(ven); 
    } catch (MalformedURLException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

} 

... 私は質問が明らかであると思います。..

答えて

2

何か以下のような:

JPanel source = (JPanel)event.getSource(); 
JPanel parent = (JPanel)source.getParent(); 
parent.add(anotherPanel, BorderLayout.EAST); 
parent.revalidate(); 
+0

はい、このイベントが2回目に発生した場合は、新しいものを追加する前に 'JFrame'から既存の' GUIVenDetails'を '削除 'することを検討してください。 –

2

それともCardLayoutを使用していますEASTにJPanelを追加してからを入れ替えることができその場所でCardLayoutメソッドを呼び出してを呼び出します。

関連する問題