swing快速入门(十四)

注释很详细,直接上代码

上一篇

新增内容

对话框内添加控件

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);
    }
}

运行效果:

下一篇

相关推荐
程序员清风13 小时前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
皮皮林55114 小时前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
华仔啊20 小时前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing20 小时前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠1 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840822 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide2 天前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家2 天前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺2 天前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602732 天前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端