注释很详细,直接上代码
新增内容
对话框内添加控件
java
import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class swing_test_12 {
public static void main(String[] args) {
Frame fame = new Frame("测试对话框");
//创建一个模式对话框
Dialog dialogMode = new Dialog(fame, "模式对话框", true);//模式对话框
//创建一个垂直的Box容器,放入一个文本框和一个按钮
Box vBox =Box.createVerticalBox();
vBox.add(new TextField("请输入内容:"));
vBox.add(new Button("确定"));
//将Box容器添加到模式对话框中
dialogMode.add(vBox);
//通过setButton()方法设置位置以及大小
dialogMode.setBounds(200, 200, 200, 200);
//创建按钮
Button buttonMode = new Button("打开模式对话框");
//按钮点击事件
buttonMode.addActionListener(e -> {
dialogMode.setVisible(true);
});//打开模式对话框
//窗口关闭响应
fame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
fame.setVisible(false);
}
});
//模式对话框关闭响应
dialogMode.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dialogMode.setVisible(false);
}
});
//将按钮添加到frame中
fame.add(buttonMode, BorderLayout.NORTH);
//自适应并显示
fame.pack();
fame.setVisible(true);
}
}
运行效果:
![](https://file.jishuzhan.net/article/1736263807107338241/585e95641dbd3450833b84d10cddc7b8.webp)
![](https://file.jishuzhan.net/article/1736263807107338241/1e7f1134eaa8605c74c11b4b634b61ff.webp)