0

second.java プログラムで[ OK ] ボタンをクリックすると、プログラムはプログラムを終了します。終了しないようにしたい(実行中のスレッドがあるため)。setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)を削除してみました。

代替テキスト


コード


import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;

public class second extends JFrame implements ActionListener {

JLabel enterName;
JTextField name;
JButton click;
String storeName;

public second(){

    setLayout(null);
    setSize(300,250);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    enterName = new JLabel("Enter Your Name: ");
    click = new JButton("Click");
    name = new JTextField();
    enterName.setBounds(60,30,120,30);
    name.setBounds(80,60,130,30);
    click.setBounds(100,190,60,30);
    click.addActionListener(this);
    add(click);
    add(name);
    add(enterName);

}

public void actionPerformed(ActionEvent e) {

    if(e.getSource() == click) {

        storeName = name.getText();
        JOptionPane.showMessageDialog(null, "Hello" + storeName);
        System.exit(0);
    }
}

public static void main(String args[]){

    second s = new second();
    s.setVisible(true);
}
}

どうもありがとう

4

1 に答える 1

14

行を削除する必要がありますSystem.exit(0);。それで全部です。

于 2010-07-03T03:16:55.213 に答える