设置一个类的jButton与另一个类的可见性

时间:2011-01-10 06:36:45

标签: java swing constructor jbutton

我有一个主类,其中包含一些面板和一些按钮,还有一个其他类,我想通过它来设置主类中按钮的可见性。

我添加了一个功能来设置主类的可见性 像:

// This is my main class  
public void setVisibility(boolean flag)  
{   
    mybutton.setVisible(flag);  
}

// this is class which calls the method,
my_constructor.setVisibility(false);

但这不起作用,有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

设置可见性后,您是否尝试重新绘制面板?

// This is my main class  
public void setVisibility(boolean flag)  
{   
    mybutton.setVisible(flag);  
    myPanel.repaint();
}

答案 1 :(得分:0)

您是否在EventDispatcherThread上调用了setVisibility(boolean)方法? (从你发布的小代码中无法分辨出来。)

Runnable runnable = new Runnable() {
   public void run() {
       setVisibility(flag);
   }
 };

EventQueue.invokeLater(runnable);

另一个小问题是,您使用名为setVisibility()的方法封装了对setVisible()方法的调用。如果我必须在你之后维护你的代码我会诅咒你的名字:-)恕我直言,只需使方法名称相同。