我有一个主类,其中包含一些面板和一些按钮,还有一个其他类,我想通过它来设置主类中按钮的可见性。
我添加了一个功能来设置主类的可见性 像:
// This is my main class
public void setVisibility(boolean flag)
{
mybutton.setVisible(flag);
}
// this is class which calls the method,
my_constructor.setVisibility(false);
但这不起作用,有人可以帮忙吗?
答案 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()方法的调用。如果我必须在你之后维护你的代码我会诅咒你的名字:-)恕我直言,只需使方法名称相同。