我有一个JPanel面板,其他几个是Super。通过从菜单中选择项目,程序创建了我已经制作的某种类型的JPanel,并与主面板相等。然后该面板显示在表单上。 现在,我有两个问题:
如何在“文件”菜单中实现“新建”按钮?
当用户选择其他内容时,如何隐藏以前使用过的面板?它显示另一个面板,但首先显示。
感谢。
修改
public class MGeo extends JFrame implements ActionListener{
private JPanel contentPane, panel;
public PanelGN pgn;
public Panel2D p2dp;
public MGeo() {
setTitle("MGeo");
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 795, 700);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JMenuBar menuBar = new JMenuBar();
menuBar.setBounds(0, 0, 395, 26);
contentPane.add(menuBar);
JMenu mnFile = new JMenu("File");
menuBar.add(mnFile);
JMenuItem mntmNew = new JMenuItem("New");
mnFile.add(mntmNew);
JMenu mnIzravnanje = new JMenu("Izravnanje");
menuBar.add(mnIzravnanje);
JMenu mnUslovno = new JMenu("Uslovno");
mnIzravnanje.add(mnUslovno);
JMenuItem mntmdMreza = new JMenuItem("2D mreza");
mnUslovno.add(mntmdMreza);
JMenu mnPosredno = new JMenu("Posredno");
mnIzravnanje.add(mnPosredno);
JMenuItem mntmdGeom = new JMenuItem("1D - geom. nivelman");
mntmdGeom.setActionCommand("GN");
mntmdGeom.addActionListener(this);
mnPosredno.add(mntmdGeom);
JMenuItem mntmdTrig = new JMenuItem("1D - trig. nivelman");
mnPosredno.add(mntmdTrig);
JMenuItem mntmdMreza_1 = new JMenuItem("2D mreza");
mntmdMreza_1.setActionCommand("2Dp");
mntmdMreza_1.addActionListener(this);
mnPosredno.add(mntmdMreza_1);
addButtons(toolBar);
contentPane.add(toolBar);
}
@Override
public void actionPerformed(ActionEvent e) {
switch((String)e.getActionCommand()){
case "GN":
make 'panel' contains pgn (JPanel child)...
break;
case "2Dp":
make 'panel' contains p2dp (JPanel child)...
break;
case ...
default:
break;
}
}
答案 0 :(得分:3)