使用Jdialog实现弹出对话框功能
以下代码使用Jdialog类实现弹出对话框功能:
package com.cxf.gui.dialog;
import javax.swing.*;
import java.awt.*;
public class TestForDialog {
public static void main(String[] args) {
new MyFrame().init();
}
}
class MyFrame extends JFrame{
public void init(){
setVisible(true);
setBounds(300,300,600,400);
JButton button = new JButton("click to open a dialog");
getContentPane().add(button);
getContentPane().setLayout(null);
button.setBounds(90,90,200,50);
button.addActionListener(e -> new Mydialog().init());
getContentPane().setBackground(Color.cyan);
}
public class Mydialog extends JDialog{
public void init(){
setVisible(true);
setBounds(400,400,400,200);
JLabel label = new JLabel("this is a dialog");
label.setHorizontalAlignment(SwingConstants.CENTER);
add(label);
}
}
}
输出结果:
点击按钮后:
并且无需添加窗口关闭的监听事件,就能点击叉号关闭窗口。
在JFrame与Jdialog窗口中添加组件时并不是直接添加,而是都需要构建容器,在容器中添加组件。