6个回答
展开全部
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame("swing test");
frame.setSize(300, 200);
frame.setLayout(null);
JButton btnNewFrame = new JButton("新窗口");
btnNewFrame.setBounds(30, 30, 80, 40);
frame.getContentPane().add(btnNewFrame);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭时,直接退出
btnNewFrame.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成
final JFrame frame = new JFrame("new frame");
frame.setSize(200, 180);
frame.getContentPane().add(new JLabel("this is a new frame"));
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosed(WindowEvent e) {
// TODO 自动生成
frame.dispose();//dispose会隐藏窗体并释放窗体所占用的部分资源
}
});
}
});
}
JFrame frame = new JFrame("swing test");
frame.setSize(300, 200);
frame.setLayout(null);
JButton btnNewFrame = new JButton("新窗口");
btnNewFrame.setBounds(30, 30, 80, 40);
frame.getContentPane().add(btnNewFrame);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭时,直接退出
btnNewFrame.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成
final JFrame frame = new JFrame("new frame");
frame.setSize(200, 180);
frame.getContentPane().add(new JLabel("this is a new frame"));
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosed(WindowEvent e) {
// TODO 自动生成
frame.dispose();//dispose会隐藏窗体并释放窗体所占用的部分资源
}
});
}
});
}
展开全部
我明白你的意思了,很简单。
新窗口(后弹出来的串口)里面的
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭时,直接退出
这句话删除掉就好了。这个所谓的直接退出,是整个程序都退出了。
新窗口(后弹出来的串口)里面的
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭时,直接退出
这句话删除掉就好了。这个所谓的直接退出,是整个程序都退出了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame("swing test");
frame.setSize(300, 200);
frame.setLayout(null);
JButton btnNewFrame = new JButton("新窗口");
btnNewFrame.setBounds(30, 30, 80, 40);
frame.getContentPane().add(btnNewFrame);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭时,直接退出
btnNewFrame.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成
final JFrame frame = new JFrame("new frame");
frame.setSize(200, 180);
frame.getContentPane().add(new JLabel("this is a new frame"));
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosed(WindowEvent e) {
// TODO 自动生成
frame.dispose();//dispose会隐藏窗体并释放窗体所占用的部分资源
}
});
}
});
}
JFrame frame = new JFrame("swing test");
frame.setSize(300, 200);
frame.setLayout(null);
JButton btnNewFrame = new JButton("新窗口");
btnNewFrame.setBounds(30, 30, 80, 40);
frame.getContentPane().add(btnNewFrame);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭时,直接退出
btnNewFrame.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成
final JFrame frame = new JFrame("new frame");
frame.setSize(200, 180);
frame.getContentPane().add(new JLabel("this is a new frame"));
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosed(WindowEvent e) {
// TODO 自动生成
frame.dispose();//dispose会隐藏窗体并释放窗体所占用的部分资源
}
});
}
});
}
更多追问追答
追问
我不是要退出程序 我是两个jFrame 有一个上面点击按钮后显示另一个JFrame同时那个也没有关闭 这个后显示的点关闭后我不希望按钮这个JFrame也关闭
追答
大哥,你没看到【frame.dispose();//dispose会隐藏窗体并释放窗体所占用的部分资源】这句吗。
public void windowClosed(WindowEvent e) {
// TODO 自动生成
frame.dispose();//dispose会隐藏窗体并释放窗体所占用的部分资源
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个方法 JFrame.dispose();
追问
我是那样写的呀 可是不行呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
追问
不行 照样把两个窗口关闭了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询