我是GUI编程的初学者,并且正在使用其他类型的按钮进行项目。
对于我的一个Jbutton,按下该按钮会调用另一个执行任务的框架。 但是,当我在主机上工作时,该框架将作为背景。 当您再次按下按钮时,将产生一个空指针错误。 我希望能够仅在第二次按下按钮时恢复背景中的帧。
changecontrastB.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// calls the contrast adjuster function
ContrastAdjuster mycontrast= new ContrastAdjuster();
// running that function which brings that frame forward
mycontrast.run("Brightness/Contrast...");
mycontrast.setVisible(true);
if (changecontrastB.isSelected() && mycontrast.isVisible()==false )
{
changecontrastB.setEnabled(false);
mycontrast.setVisible(true);
}
}
});
changecontrastB是我真正的Jbuton。
答案 0 :(得分:0)
执行以下操作:
在带有按钮的类中,创建JFrame类型的成员变量:
JFrame frame = null;
在通过按钮调用的动作侦听器中,包括一个if(需要对其进行调整以适合您的类名):
如果(帧=空) frame = new MyFrame(); //可能还需要其他初始化。 其他 frame.toFront();