库里斯托 2023-06-19 11:10 采纳率: 87.6%
浏览 15

关闭了这个窗口后程序直接退出了

import javax.swing.*;
import java.awt.*;
public class registerok_ui {
    public registerok_ui() {
        JFrame frame = new JFrame("注册成功");
        frame.setDefaultCloseOperation(3); //当关闭当前窗口时,不退出整个程序
        frame.setBounds(500, 100, 600, 600);
        JPanel panel = new JPanel(new GridBagLayout());
        frame.setContentPane(panel);
        GridBagConstraints constraints = new GridBagConstraints();
        constraints.fill = GridBagConstraints.NONE;
        constraints.anchor = GridBagConstraints.WEST;
        constraints.insets = new Insets(10, 10, 10, 10);
        JLabel text1 = new JLabel("注册成功");
        constraints.gridx = 0;
        constraints.gridy = 0;
        panel.add(text1, constraints);
        frame.setVisible(true);
    }
}

关闭了这个窗口后程序直接退出了,怎么解决?

  • 写回答

4条回答 默认 最新

  • MarkHan_ 2023-06-19 11:22
    关注
    import javax.swing.*;
    import java.awt.*;
    
    public class RegisterOkUI {
        public RegisterOkUI() {
            JFrame frame = new JFrame("注册成功");
            frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); // 设置关闭操作为销毁窗口而不退出程序
            frame.setBounds(500, 100, 600, 600);
            JPanel panel = new JPanel(new GridBagLayout());
            frame.setContentPane(panel);
            GridBagConstraints constraints = new GridBagConstraints();
            constraints.fill = GridBagConstraints.NONE;
            constraints.anchor = GridBagConstraints.WEST;
            constraints.insets = new Insets(10, 10, 10, 10);
            JLabel text1 = new JLabel("注册成功");
            constraints.gridx = 0;
            constraints.gridy = 0;
            panel.add(text1, constraints);
            frame.setVisible(true);
        }
    
        public static void main(String[] args) {
            new RegisterOkUI();
        }
    }
    
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 6月19日