Java 调用外部类';来自内部操作类的方法getContentPane()

Java 调用外部类';来自内部操作类的方法getContentPane(),java,jframe,abstract-action,Java,Jframe,Abstract Action,我想从内部操作类调用外部类的方法getContentPane()。我不明白为什么我的代码不起作用 public class MainFrame extends JFrame { public MainFrame() { super("My app"); JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); JMenu myMenu = new JMenu("Fil

我想从内部操作类调用外部类的方法getContentPane()。我不明白为什么我的代码不起作用

public class MainFrame extends JFrame {
    public MainFrame() {
        super("My app");
        JMenuBar menuBar = new JMenuBar();
        setJMenuBar(menuBar);

        JMenu myMenu = new JMenu("File");
        menuBar.add(myMenu);
        Action myAction = new AbstractAction("Do everything") {
            public void actionPerformed(ActionEvent e) {
                JPanel panel = new JPanel();
                panel.setBackground(Color.CYAN);
                getContentPane().add(panel, BorderLayout.CENTER);
            }
        };
        myMenu.add(myAction);
    }
}

您必须调用
validate()getContentPane()之后的code>method.add(…)

validate方法用于使容器布置其布局 再次使用子组件。当此容器 修改子组件(添加到容器或从容器中移除,或 容器安装后,布局相关信息(已更改) 显示

你能详细谈谈“不起作用”吗?