模态对话框与非模态对话框
模态对话框与非模态对话框
JDialog
public void setModal(Boolean modal)
package com.swing.Jlist;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.UIManager;
public class Test04 extends JFrame{
public Test04(){
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.Nimbu
sLookAndFeel");
} catch (Exception e) {
// TODO: handle exception
}
JButton jb1=new JButton("模态显示对话框");
jb1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
do_button01(e);
}
});
JButton jb2=new JButton("非模态显示对话框");
jb2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
for(int i=0;i<10;i++){
do_button02(e);
}
}
});
jb1.setBounds(103,64, 206,30);
jb2.setBounds(103,106, 206,30);
this.setLayout(null);
this.add(jb1);
this.add(jb2);
this.setVisible(true);
this.setBounds(100,100, 450,300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void do_button01(ActionEvent e){
JDialog jd=new JDialog(this);
jd.setModal(true);
jd.setSize(300,200);
jd.setLocation(200,200);
jd.setTitle("模态显示对话框");
JButton jb3=new JButton("关闭");
jb3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(1);
}
});
jb3.setBounds(20, 20,100,30);
jd.setLayout(null);
jd.add(jb3);
jd.setVisible(true);
}
public void do_button02(ActionEvent e){
JDialog jd=new JDialog(this);
jd.setModal(false);
jd.setSize(300,200);
jd.setLocation(200,200);
jd.setTitle("模态显示对话框");
JButton jb3=new JButton("关闭");
jb3.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(1);
}
});
jb3.setBounds(20, 20,100,30);
jd.setLayout(null);
jd.add(jb3);
jd.setVisible(true);
}
public static void main(String[] args) {
new Test04();
}
}