猿问

为什么将框架设置为不可见时此代码会产生错误?

我试图隐藏当前帧,当用户单击按钮但它会生成错误


我试图创建一个方法并在 actionlistener 中调用它,但它仍然不行


JButton btnAdd = new JButton("Add");

btnAdd.addActionListener(new ActionListener() {

    public void actionPerformed(ActionEvent e)

    {

        AddBook add1=new AddBook();

        add1.show();

        frame.setVisible(false);

    }});

btnAdd.setBounds(135, 113, 101, 49);

contentPane.add(btnAdd);

框架无法解析


慕容3067478
浏览 120回答 1
1回答

月关宝盒

因为在您定义的frame范围内无法访问该变量。ActionListener任何一个:使用frame字段或简单地在(eg: )ActionListener之后但在.frameJFrame frame = new JFrame(..); btn.addActionListener(...);setVisible(true)尝试找到Window按钮所在的位置,SwingUtilities::windowForComponent可能会有所帮助,或者如果您想要聚焦窗口,请结合使用KeyboardFocusManager::getCurrentKeyboardFocusManager、KeyboardFocusManager::getFocusOwner和SwingUtilities::windowForComponent。
随时随地看视频慕课网APP

相关分类

Java
我要回答