我ActionListener
的{{1}}代码要转到另一个JButton
,但它无法正常工作,尽管之前曾经工作过。我的代码如下:
JPanel
我不确定它有什么问题。
答案 0 :(得分:4)
在可见GUI中添加/删除组件时,基本代码为:
panel.remove(...);
panel.add();
panel.revalidate(); // to invoke the layout manager
panel.repaint();
问题是你为什么使用removeAll()?任何时候我看到这样的代码,这意味着你应该使用Card Layout,然后只需交换面板。
答案 1 :(得分:1)
btnNext.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JPanel contentPane = new ListofDuties2(myFrame);
myFrame.getContentPane().removeAll();
myFrame.setContentPane(contentPane);
myFrame.getContentPane().revalidate();
myFrame.setVisible(true);
}} );
你最后忘记了);
同时致电revalidate()