Java Swing 自定义JOptionPane

Java Swing教程-10. 对话框(JDialog与JOptionPane) 本教程介绍了Java Swing中两种对话框的使用方法。标准对话框(JOptionPane)提供了四种常用类型:消息框(MessageDialog)用于显示提示信息,确认框(ConfirmDialog)用于获取用户确认,输入框(InputDialog)用于接收用户输入,选项框(OptionDialog)支持自定义按钮选项。对于更复杂的交互需求,可以通过JDialog创建完全自定义的对话框,支持模态和非模态两种模式。教程通过用户信息输入框的完整示例,演示了如何创建包含文本字段和按钮的自定义对话框,并实现与主窗 阅读详情

运行后的样式

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class demoB {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            JFrame jf = new JFrameDemo();
            jf.setVisible(true);
        });
    }

    static class JFrameDemo extends JFrame {
        private JButton button;

        public JFrameDemo() {
            setTitle("主窗口");
            setSize(400, 300);
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            setLocationRelativeTo(null);

            button = new JButton("打开对话框");
            button.addActionListener(new DialogListener());
            
            getContentPane().add(button, BorderLayout.CENTER);
        }

        public JButton getJButton() {
            return button;
        }
    }

    static class DialogListener implements ActionListener {
        @Override
        public void actionPerformed(ActionEvent e) {
            // 主面板(设置内边距)
            JPanel mainPanel = new JPanel(new GridLayout(2, 1, 5, 10)); // 行间距10像素
            mainPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); // 外边距

            // 创建两行输入区域
            mainPanel.add(createInputRow("按钮1"));
            mainPanel.add(createInputRow("按钮2"));

            // 显示对话框
            JOptionPane.showOptionDialog(
                    null,
                    mainPanel,
                    "标题",
                    JOptionPane.DEFAULT_OPTION,
                    JOptionPane.PLAIN_MESSAGE,
                    null,
                    new Object[]{},  // 必须空数组
                    null
            );
        }

        // 创建单行布局(核心修改部分)
        private JPanel createInputRow(String buttonText) {
            JPanel panel = new JPanel(new BorderLayout(10, 0)); // 水平间距10像素
            
            JTextField textField = new JTextField();
            textField.setPreferredSize(new Dimension(200, 30)); // 固定高度30
            
            JButton button = new JButton(buttonText);
            button.setPreferredSize(new Dimension(80, 30));    // 固定高度30
            
            panel.add(textField, BorderLayout.CENTER);
            panel.add(button, BorderLayout.EAST);
            
            return panel;
        }
    }
}

手把手教你学 MATLAB 实战训练(6.9):卷积神经网络(CNN)模型来进行图像分类任务(预训练的 ResNet-50 模型) 加载数据集数据预处理加载预训练模型修改和扩展预训练模型设置训练选项训练模型测试模型。 阅读详情

相关推荐

开源网格生成利器Gmsh:从入门到二次开发实战指南

本文详细介绍了开源网格生成工具Gmsh,从基础概念、安装配置到核心功能实战,提供了全面的入门指南。重点阐述了其强大的二次开发能力,通过Python API实现参数化建模、边界层网格生成以及与FEniCS、OpenFOAM等求解器的集成,为有限元分析和计算流体力学仿真提供灵活高效的自动化网格划分解决方案。

weixin_29066781的博客 434

04.JavaSwing(JOptionPane类)

JOptionPane 有助于方便地弹出要求用户提供值或向其发出通知的标准对话框。

淡独东执 1491

本地AI助手部署指南:DeepSeek Harness与Ollama集成实践

AI Agent作为当前人工智能领域的热门技术,通过模拟人类决策过程,能够自主规划、调用工具并执行复杂任务。其核心原理在于将大语言模型的推理能力与外部工具API相结合,形成可闭环的工作流。这种技术架构的价值在于显著提升了AI系统的实用性和自动化水平,使其从单纯的对话工具转变为能够解决实际问题的智能助手。在应用场景上,AI Agent广泛应用于代码生成、数据分析、自动化办公等领域。本文聚焦于如何通过DeepSeek Harness平台与Ollama本地模型的集成,实现隐私安全、离线可用的AI助手部署方案,特别

dengjuanshou7445的博客 474

java swing入门教程_JAVA swing初级教程(四)

附加的swing小部件(下)JOptionPaneJOptionPane是在Swing中类似“快捷方式”的东西。通常,作为UI开发人员,您需要向用户呈现快速信息,让用户了解错误和信息。甚至可能想得到一些快速数据,例如名称或数字。在Swing中,JOptionPane类为这些东西提供了快捷方式,但这并不是它必须完成的任务。不需要让每个开发人员重头开始重复相同的工作,Swing已经提供了这个基本...

weixin_28754365的博客 360

车道线检测1.0(Python+Opencv基础版)

车道线检测是指在道路上自动检测和识别车道线的过程。车道线是道路上的标记,用于指示车辆行驶的方向和位置。 通过对车道线进行检测和识别,自动驾驶和智能驾驶系统可以实现车辆的自动导航、车道保持、车道偏离警告等功能。

Dream_orz的博客 4264

【Cadence】 ADS Dynamic Link使用教程

在Cadence617上使用ADS Dynamic Link

乾巽的博客 6074

Java AWT Swing60_swing_基本组件用法_JOptionPane

是 Swing 的核心组件之一,它提供了一种方便的方式来与用户进行基本的交互,不需要编写大量的代码。无论是显示一个简单的信息、获取用户的确认、接收用户输入还是提供自定义的选项,都能够满足需求,使得创建对话框变得快速而简便。

tang7mj的博客 617

采用LM324输出方波、正弦波、三角波

介绍以LM324运放芯片为核心,设计电路连接,实现三角波转化为正弦波,再由正弦波转化为方波输出的简易函数信号发生器的基本功能。本文介绍通过使用NI Multisim 14.0软件仿真模拟搭建所设计的电路,再使用这个软件的示波器进行仿真输出三角波,正弦波,方波。使用软件进行仿真后再到实验室进行调试,将其接入电源,并通过在显示器上观察波形以及数据,得到结果。该电路结构简单,信号的幅度、频率等参数可调,在仿真软件和实验室检测都有较好的性能输出,可替代实验室标准的函数信号发生器完成一般的实验要求。

qq_48771816的博客 7万+

Java的JOptionPane

是 Java Swing 库中的一个类,用于生成标准的对话框,比如信息对话框、输入对话框、确认对话框或者选项对话框。这些对话框用于简单的信息通知、用户输入或者用户确认。

weixin_63490470的博客 884

ml307 二次开发

中移物联网旗下4g模组官方网站官方教程id=514官方客户不知道啥时候上班 早上10点也说不在服务时间内 找不到官方的sdk下载路径。

myWorld001的博客 2879

Python3 ACM模式输入输出全攻略:从牛客网到华为机试的实战技巧

本文详细解析了Python3在ACM模式下的输入输出处理技巧,针对牛客网、华为机试等在线评测系统。文章从input()函数本质出发,总结了六种高频输入模式的处理模板,并提供了链表、二叉树等数据结构的I/O实战方案,最后给出性能优化与常见避坑指南,帮助开发者高效应对算法笔试。

zero1的博客 998

Swing学习21:Java Swing JOptionPane

对话框通常用作从用户处接收附加信息,或者提供发生了某种事件的通知。Java 提供了 JOptionPane 类,用来创建标准对话框,也可以通过扩展 JDialog 类创建自定义的对话框。JOptionPane 类可以用来创建 4 种类型的标准对话框:确认对话框、消息对话框、输入对话框和选项对话框。 文章目录确认对话框消息对话框输入对话框选项对话框 确认对话框 确认对话框显示消息,并等待用户单击“确...

一条会编程的鱼 2722

2023,程序员的出路在哪里?

可是似乎从30岁开始这工资就没涨过,前面跳槽几次涨的薪水在30岁以后跳槽已经不管用了、定格了,这几年由于市场环境不景气,程序员竞争越来越激烈,36岁跟30拿的工资一模一样,不仅工资拿的一样,反而事情还越来越多了,这些都意味着什么?处理故障需要的通常不仅仅是写代码的能力,还需要对一个系统的全貌要有一定的掌握。虽然目前不少大型互联网企业都在进行结构性调整,但是从互联网行业发展的基本面来看,未来在产业互联网发展的过程中,IT行业和传统行业将会释放出大量的就业岗位,所以未来程序员的发展空间还是非常值得期待的。

AI天才研究院 20万+

java swing如何安装_Java Swing - 如何安装JOptionPane的自定义按钮

import java.awt.Component;import java.awt.Container;import javax.swing.AbstractButton;import javax.swing.JDialog;import javax.swing.JOptionPane;public class Main {public static void main(String[] args...

weixin_39524703的博客 166

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

超详细的Java弹窗样式及使用教程【JOptionPane类详细使用教程】

JOptionPane类是Swing程序设计中进行弹窗设置的主要方式,本文将详细对Java弹窗进行总结,包括弹窗的设置方法和对内容的读取!敬请阅读! 目录 四种消息提示框 五种消息类型 九种对话框参数 确认对话框 输入对话框 消息对话框 选择对话框 自定义消息图标 Hello!你好哇,我是灰小猿,一个超会写bug的沙雕程序猿! 今天来和大家分享一个Swing程序设计中关于JOptionPane类的使用,该类的作用呢,其实主要就是设置弹窗,所以在这里也就和大家总结了常用的弹窗设置的方.

累计发表博客60余万字,优快云 博客专家、Java 领域优质创作者、华为云享专家、阿里云专家博主。专注分享 Java 优质文章,毕设实战项目开发,全网粉丝10W+ 1万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

JOptionPane如何自定义按钮绑定事件

JOptionPane是java方便快捷弹出窗口。虽然没有JDialog那么灵活,但是确实实用。切入正题如何在JOptionPane自定义按钮,这里用到如下方法。 public static int showOptionDialog(Component parentComponent, Object message,

往前的娘娘 3361

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

java 自定义对话框_java – 自定义JOptionPane对话框

我正在学习java swing.下面的代码是一个catch块,它处理IOException并显示错误消息.catch(IOException e){System.out.println("IOException");JOptionPane.showMessageDialog(null,"File not found",null,JOptionPane.ERROR_MESSAGE);}我想在catc...

weixin_29279153的博客 471

java 浅谈JOptionPane

//也可利用JOptionPane的构造方法自定义对话框, //如:自己做一个输入密码的对话框 final JPasswordField field=new JPasswordField(); field.setEchoChar('*'); field.requestFocusInWindow(); Object[] message = { "请输入当前用户密码:", field}

B_H_L的专栏 6842

javax.swing.JOptionPane.showMessageDialog() 方法

//default title and icon           JOptionPane.showMessageDialog(frame,"Eggs are not supposed to be green.","Message");             //custom title, warning icon JOptionPane.showMessageDialog(frame,"

小狮子@SH 7427

Java Swing – JOptionPane showInputDialog示例

这是JOptionPane类的showInputDialog()方法的回顾。 使用这种方法,我们可以在自定义对话框窗口时提示用户输入。 showConfirmDialog返回String或Object ,可以使用以下参数组合调用: Object (returns String) –显示一个问题消息对话框,要求用户输入。 Object, Object (returns String) –...

一名可爱的技术搬运工 1万+

java swing 左上角图标_如何在Swing中显示带有自定义图标的消息对话框?

以下示例展示如何在基于swing的应用程序中显示带有自定义图标的消息警告。使用以下API -JOptionPane - 创建标准对话框。JOptionPane.showMessageDialog() - 显示消息警报。ImageIcon - 将图标传递给消息对话框。示例import java.awt.BorderLayout;import java.awt.FlowLayout;import ...

weixin_34369789的博客 445

Java Swing – JOptionPane showMessageDialog示例

这是JOptionPane类的showMessageDialog()方法的回顾。 这种方法是一种快速简便的方法,可以将发生的事情告诉用户。 可以使用以下参数组合调用showMessageDialog() : Component, Object Component, Object, String, int Component, Object, String, int, Icon 组件–第...

一名可爱的技术搬运工 1万+

java swing自定义对话框_swing-Java-如何创建自定义对话框?

swing-Java-如何创建自定义对话框?我在JFrame上有一个按钮,单击该按钮后,我希望对话框弹出并带有多个文本区域供用户输入。 我一直在四处寻找解决方法,但我一直感到困惑。 有人可以帮忙吗?6个解决方案80 votes如果您不需要太多自定义行为,则JOptionPane可以节省大量时间。 它负责确定/取消选项的放置和本地化,并且是一种无需定义自己的类即可显示自定义对话框的快捷方法。 大多数...

weixin_32101377的博客 688

JOptionPane入门了解

建议阅读官方资料:https://docs.oracle.com/javase/7/docs/api/javax/swing/JOptionPane.html import javax.swing.JOptionPane;导入JOptionPane,直接输入或者用Ctrl+Shift+O 先说下JOptionPane,JOptionPane是Java系统中众多预定义的类之一。就是可以反复使用,...

小木 2131

关于JoptionPane提示框

import java.util.*; import javax.swing.JOptionPane; import javax.swing.UIManager; public class Main { public static void main (String args[]){ try{ UIManager.setLookAndF

Lola&France 1380
上一篇: Java· swing 小demo
下一篇: Java Swing 依赖注入 思想
wu_android
博客等级 码龄10年 94粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值