弹窗
//主窗口
public class DialogDemo extends JFrame {
public DialogDemo() throws HeadlessException {
this.setVisible(true);
this.setSize(500,500);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
//JFrame 放容器
Container container = this.getContentPane();
//绝对布局
container.setLayout(null);
//按钮
JButton button = new JButton("弹出对话框!");
button.setBounds(30,30,200,100);
//点击按钮时,弹出一个弹窗
button.addActionListener(new ActionListener() { //监听器
@Override
public void actionPerformed(ActionEvent e) {
//弹窗
new MyDialogDemo();
}
});
container.add(button);
}
public static void main(String[] args) {
new DialogDemo();
}
}
//弹窗
class MyDialogDemo extends JDialog{
public MyDialogDemo(){
this.setVisible(true);
this.setBounds(100,100,500,500);
// this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
//JDialog退出只能是D0_ONTHING,HIDE,DISPOSE这三个中的一种
//应该是默认就有关闭事件
Container contentPane = this.getContentPane();
contentPane.setLayout(null);
Label label = new Label("test!");
label.setBackground(Color.CYAN);
label.setBounds(50,50,200,200); //标签设置大小才能显示
contentPane.add(label);
}
}