所以我有一个JFrame
,其中有一堆JPanel
,称为venPanel
。当我点击venPanel
时,我希望JFrame
在布局的东边添加新的JPanel
(因为JFrame
使用边框布局)。我怎样才能在venPanel
课程中实现这一目标?目前,mouseClick
的{{1}}动作侦听器实现为:
venPanel
@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();
}
}
是GUIVenDetails
我想要添加到JPanel
的东边的地方。
我希望问题很清楚..
答案 0 :(得分:2)
类似的东西:
JPanel source = (JPanel)event.getSource();
JPanel parent = (JPanel)source.getParent();
parent.add(anotherPanel, BorderLayout.EAST);
parent.revalidate();
答案 1 :(得分:2)
或者您可以向使用JPanel
的EAST添加CardLayout
,然后通过调用JPanels
方法在该位置交换CardLayout
。