JAVA 我在另一个类中申明一个JFrame的对象 用对象.dispose();为什么没报错但是就是关闭不了JFrame? 10
我又换成对象.setVisiable(fale);也隐藏不了JFrame......怎么解决?...
我又换成 对象.setVisiable(fale);也隐藏不了JFrame......怎么解决?
展开
1个回答
展开全部
class CCFrame extends JFrame {
private JButton btn = new JButton("弹出新窗口");
public CCFrame() {
setSize(500,300);
setLocationRelativeTo(null);
setVisible(true);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setLayout(new FlowLayout());
add(btn);
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// 弹出一个新的Frame
final JFrame f = new JFrame();
f.setTitle("这是新窗口");
f.setSize(300,200);
f.setVisible(true);
f.setLocationRelativeTo(null);
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
f.dispose();
}
});
}
});
}
}
然后new CCFrame()就可以了。
private JButton btn = new JButton("弹出新窗口");
public CCFrame() {
setSize(500,300);
setLocationRelativeTo(null);
setVisible(true);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setLayout(new FlowLayout());
add(btn);
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
// 弹出一个新的Frame
final JFrame f = new JFrame();
f.setTitle("这是新窗口");
f.setSize(300,200);
f.setVisible(true);
f.setLocationRelativeTo(null);
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent arg0) {
f.dispose();
}
});
}
});
}
}
然后new CCFrame()就可以了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询