清除java应用程序中的按钮

时间:2012-11-26 19:37:52

标签: java garbage-collection

我的代码由三个类组成,例如:x(扩展JFrame),y(扩展JPanel)和z。 x具有主要功能。它有borderLayout并且有两个面板:left和center。左侧面板有一堆JButtons和JTextFields,用户输入他的值,这些值用于将一些东西绘制到我的y类处理的中心面板中。

y类使用z类进行一般计算。现在我差不多完成程序了,我正在左边面板上的“清除”按钮,它将清除用户输入的所有文本以及我的中心面板中的内容(由y类处理)。

我可以做的是将一些值设置为默认值并重新绘制()我的中心面板,但问题是有很多变量,然后我的z类中又有很多变量(实例化了)由y)。

这让人感到困惑和厌倦所以我在想,如果我有任何办法(我在这里违反垃圾收集的规则)我可以在我的x类中杀死y的实例并创建一个新实例。这将是如此整洁。告诉我在这种情况下我应该做些什么。感谢。

编辑:我希望清除按钮删除已经绘制到我面板中的内容,这样我可以在我的x类中执行此操作吗?

remove(myRightpanelInstance);
myRightPanel myRightpanelInstance2 = new myRightPanel();
add(myRightpanelInstance2, BorderLayout.CENTER);

它无法正常工作。

1 个答案:

答案 0 :(得分:0)

根据您的编辑,您要添加新面板并覆盖旧面板。你可以简单地说:

 MyRightPanel myRightPanelInstance2 = new myRightPanel();
 add(myRightPanelInstance2, BorderLayout.CENTER);

这将使用新的面板覆盖现有面板。

确保此代码在您的监听器中以获取清除按钮。只有在侦听器中调用此代码时才会发生这种情况。

  clearButton.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            //Either above code here or above code in a method and method call here
        }
    })