JOptionPane

article/2025/8/27 16:15:01
JOptionPane提供了许多对话框样式,该类能够让你在不编写任何专门对话框代码的情况下弹出一个简单的对话框。

  JOptionPane类提供了7个构造方法用于创建JOptionPane的类对象,不过在实际使用时,

  通常不是用new方式创建,而是使用JOptionPane类提供的一些静态方法产生。JOptionPane有四个静态方法来显示这些简单对话框:

  (1)showMessageDialog:提示信息对话框,这种对话框通常只含有一个“确定”按钮。

  (2)showConfirmDialog :确认对话框,这类对话框通常会询问用户一个问题,要求用户做YES/NO的回答。

  (3)showOptionDialog:选择对话框,这类对话框可以让用户自己定义对话框的类型。

  (4)showInputDialog:输入对话框,这类对话框可以让用户输入相关的信息,当用户完成输入并按下确定按钮后,系统会得到用户所输入的信息。

  对于每种形式的对话框都有多个静态重载方法,下面分别予以说明。

  1. Message Dialog

  Message Dialog称为提示信息对话框,这种对话框中通常只含有一个“确定”按钮。可以使用showMessage Dialog静态方法来显示一个Message Dialog,showMessageDialog方法具有如下重载形式。

  ·showMessageDialog(Component parentComponent, Object message)

  ·showMessageDialog(Component parentComponent, Object message, String title, int messageType)

  ·showMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon)

  各参数的含义如下:

  parentComponent - 确定在其中显示对话框的 Frame;如果为 null 或者其不具有 Frame,则使用默认的 Frame

  message - 要显示的 Object

  title - 对话框的标题字符串

  messageType - 要显示的消息类型,int枚举类型:ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、QUESTION_MESSAGE 或 PLAIN_MESSAGE,这5个值都是JOptionPane的静态数据成员,可直接使用JOptionPane加“.”的方式使用,5个消息类型的显示效果如下表

  图8-14 messageType显示效果

  icon - 要在对话框中显示的图标,该图标是用户自定义的图标,如果显示该图标,则不会再显示messageType指定的消息类型的系统图标。一般不需要使用,除非用户有特定需求。

  showMessageDialog方法无返回值,Message Dialog只是告知用户某些信息,用户除了点击确定按钮外不能与其进行交互。

  一个典型的Message Dialog的显示效果见下图

  图8-12 典型Message Dialog显示效果

  对应语句:

  JOptionPane.showMessageDialog(null, "这是一个消息对话框吗?","对话框title",JOptionPane.QUESTION_MESSAGE,null);

  2.ConfirmDialog

  Confirm Dialog称为确认对话框,这类对话框通常会询问用户一个问题,要求用户作出YES/NO的回答。可以使用showConfirmDialog静态方法来显示一个Confirm Dialog,showConfirmDialog方法具有如下重载形式。

  showConfirmDialog(Component parentComponent, Object message)

  showConfirmDialog(Component parentComponent, Object message, String title, int optionType)

  showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType)

  showConfirmDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon)

  showConfirmDialog方法中有6个参数,其中5个与showMessageDialog的参数相同,含义也一样,这里不再重复说明,showConfirmDialog方法中新增一个参数optionType,该参数的含义如下:

  optionType—指定可用于对话框的选项的 int:YES_NO_OPTION、YES_NO_CANCEL_OPTION 或 OK_CANCEL_OPTION,具体的显示效果见下表

  表8-15 optionType显示效果

  showConfirmDialog的返回值为int类型。其中YES,OK=0;NO=1;CANCEL=2;CLOSED=-1(用户直接点击关闭按钮关闭对话框)。通过对返回值的判断,可以做到与用户之间的交互(如用户是按下了确定按钮 还是取消按钮,根据按下按钮的不同做不同的处理)

  下面是一个典型的Confirm Dialog的显示效果。

  图8-13典型Confirm Dialog显示效果

  对应语句:JOptionPane.showConfirmDialog(null, "你确认这是一个确认对话框吗?","对话框title",JOptionPane.YES_NO_OPTION);

  3.Input Dialog

  Input Dialog称为输入对话框,这类对话框可以让用户输入相关的信息,当用户完成输入并按下确定按钮后,系统会得到用户所输入的信息。输入对话框不见可以让用户自行输入数据,也可以提供ComboBox组件让用户选择相关信息,避免用户输入错误。可以使用showInputDialog静态方法来显示一个Input Dialog,showInputDialog方法具有如下重载形式。

  showInputDialog(Object message)

  showInputDialog(Object message, Object initialSelectionValue)

  showInputDialog(Component parentComponent, Object message)

  showInputDialog(Component parentComponent,Object message, Object initialSelectionValue)

  showInputDialog(Component parentComponent, Object message, String title, int messageType)

  showInputDialog(Component parentComponent, Object message, String title, int messageType, Icon icon, Object[] selectionValues, Object initialSelectionValue)

  showInputDialog方法中有7个参数,其中5个与showMessageDialog的参数相同,含义也一样,这里不再重复说明,showInputDialog方法中新增两个参数,selectionValues 和initialSelectionValue,含义如下:

  selectionValues—用户可能的选择值,以数组方式赋值,显示形式为ComboBox。

  initialSelectionValue—对话框初始化时输入框中的显示值。

  showInputDialog方法的返回值有两种:String类型和Object类型,当用户按下确定按钮时会返回用户输入(或选择)的信息,若按下取消按钮则会返回null。

  下面是一个典型的Input Dialog的显示效果。

  图8-14典型Input Dialog显示效果

  对应语句:

  JOptionPane.showInputDialog(null ,"请选择城市:","对话框title", JOptionPane.INFORMATION_MESSAGE,null,new String[]{"北京","上海","广州","天津 "},"北京");

  4.Option Dialog

  Option Dialog称为选择对话框,这类对话框可以让用户自己定义对话框的类型。它可以根据需要改变按钮上的文字,而不是系统默认的“确定”、“取消”、“是”、“否”等。可以使用showOptionDialog静态方法来显示一个Option Dialog,该静态方法无重载方法,具体形式如下:

  showOptionDialog(Component parentComponent, Object message, String title, int optionType, int messageType, Icon icon, Object[] options, Object initialValue)

  该方法提供了8个参数,其中7个参数与showInputDialog的参数完全相同,不再重复说明,新增一个参数options,其含义如下:

  options—按钮上的文字,系统会根据options的长度n创建n个按钮。

  showOptionDialog的返回值类型为int,当点击由options数组确定的按钮时,其值为options数组的下标值,当点击关闭按钮时其值为-1。

  下面是一个典型的Option Dialog的显示效果。

  图8-15典型Option Dialog显示效果

  对应语句:

  JOptionPane.showOptionDialog(null, "选项对话框", "对话框title", JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE, null,new String[]{"自定义1","自定义2","自定义3"},"自定义1");

  当点击“自定义1”按钮时,返回值为0,“自定义2”按钮时,返回值为1,“自定义2”按钮时,返回值为2,点击取消按钮时返回值为-1


http://chatgpt.dhexx.cn/article/wcar4ttV.shtml

相关文章

什么pojo

pojo(Plain Ordinary Java Object):普通的Java对象,其实就是简单的JavaBean实体类。对应数据库里的某一张表,pojo里的每一个属性都和该表中的字段一 一对应。 POJO有一些private的参数作为对象的属性。然后针对每个参…

随机变量的期望和方差

X服从两点分布,则 X服从超几何分布,即 ,则 X服从二项分布,即 ,则 X服从泊松分布,即 ,则 连续型 X服从均匀分布,即 ,则 , X服从指数分布&#xff…

概率论 —— 相关分布以及期望方差的求法汇总

离散型 1. 两点分布(伯努利分布) 在一次试验中,事bai件A出现的概du率为P,事件A不出现的概率为ql -p,若以X记一次试zhi验中A出现的次数,则X仅取0、I两个值。 两点分布是试验次数为1的伯努利试验。 2. 二项…

概率论笔记(四)概率分布的下期望和方差的公式总结

文章目录 一:期望1.1离散型随机变量的期望1.2连续型随机变量的期望1.3期望的性质 二:随机变量函数(复合随机)的数学期望三:方差3.1离散型随机变量的方差3.2连续性随机变量的方差3.3方差的性质 四:协方差4.1…

概率论与数理统计:六大基本分布及其期望和方差

绪论: 概率论中有六大常用的基本分布,大致可分成两类:离散型(0-1分布、二项分布、泊松分布),连续型(均匀分布、指数分布、正态分布)。 补充: 在进入正文之前先讲一下期…

几何分布的期望和方差公式推导_GPR(高斯过程回归)详细推导

GPR(高斯过程回归)详细推导 一、综述 GPR来源于线性模型,有两种方式可以推导出GPR,一种是weight space view,另外一种是function space view。两者考察方式假设不同,关注的对象不同,但是最后导出的结果是相同的。其中,function view的推导方式更加简单,GPR最终的为了实现…

C/C++ :Sizeof 的用法

Sizeof有以下特点: Sizeof是C/C中的一个运算符,不是一个函数,返回值为size_tsizeof不能被编译成机器码,编译过程中就会计算sizeof的具体值,然后用值替换掉sizeof ()。所以可以用sizeof() 来定义数组的维数。sizeof ()…

C语言中sizeof用法

sizeof()简单介绍 (一)基本概念 sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。 (二)使用方法 1、用于数据类型 sizeof使用形式&#x…

【C语言】如何正确使用sizeof

sizeof用过吧?你肯定用过,至少你刚开始学C或者C的时候,学到类型这一节,你一定会写如下代码测试每个类型的长度。 printf("%d", sizeof(int));printf("%d", sizeof(char));printf("%d", sizeof(shor…

Sizeof的用法;他是一个函数吗?

1.一直以来以为sizeof是一个函数&#xff0c;看过c语言深度剖析才知道&#xff0c;sizeof是一个骗子&#xff0c;它伪装的很好~~~ 以下我们用实际代码来告诉你它其实是 关键字 #include<stdio.h> int main() { int i 0; printf("%d %d %d\n",sizeof(int)…

c语言—常见字符串函数与sizeof详解

1.sizeof使用 a.代码1 int main() {int a 0;int arr[] { 1,2,3,4 };printf("%d\n", sizeof(a));printf("%d\n", sizeof a);printf("%d\n", sizeof(&a));//表示地址的大小printf("%d\n", sizeof(int));printf("%d\n"…

sizeof函数的用法

sizeof函数的用法&#xff1a; 1、sizeof()函数是用来计算变量所占内存空间的大小&#xff0c;单位是字节&#xff08;byte&#xff09; 举例如下&#xff1a; #define _CRT_SECURE_NO_WARNINGS #include <stdio.h>//sizeof函数的用法 //sizeof()函数是用来计算变量所占…

C/C++ | sizeof()函数

C语言中 判断数据类型长度符的关键字 用法 sizeof (类型说明符) sizeof 表达式 定义 sizeof是C/C中的一个操作符&#xff08;operator&#xff09;&#xff0c;简单的说其作用就是返回一个对象或者类型所占的内存字节数。 MSDN上的解释为&#xff1a; The sizeof keyword…

开发人员必知!什么是Scrum敏捷开发?

什么是Scrum敏捷开发 Scrum是敏捷开发的一种,是一种以人为本,迭代式增量软件开发的过程,以英式橄榄球争球队形(Scrum)为名,因此可以想象,整个团队是高效而富有激情的。以人为本,即Scrum开发特别强调沟通,要求团队所有人员都坐着一起工作,通过高效的沟通解决问题。 S…

Scrum敏捷开发框架

Scrum 是一个用于开发和维持复杂产品的框架 &#xff0c;是一个增量的、迭代的开发过程。在这个框架中&#xff0c;整个开发过程由若干个短的迭代周期组成&#xff0c;一个短的迭代周期称为一个Sprint&#xff0c;每个Sprint的建议长度是2到4周(互联网产品研发可以使用1周的Spr…

Scrum敏捷开发实战分享(上篇):方法介绍、敏捷团队和敏捷流程

一、方法介绍 先从一则故事说起&#xff1a; 一天&#xff0c;一头猪和一只鸡在路上散步 鸡对猪说&#xff1a;“嘿&#xff0c;伙计&#xff0c;我们合伙开一家餐馆怎么样&#xff1f;” 猪看了一下鸡说&#xff1a;“好主意&#xff0c;那我们给它取什么名字呢&#xff…

什么是Scrum敏捷开发?

什么是敏捷开发&#xff1f; 敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。 怎么理解呢&#xff1f;首先&#xff0c;我们要理解它不是一门技术&#xff0c;它是一种开发方法&#xff0c;也就是一种软件开发的流程&#xff0c;它会指导我们用规定…

Scrum敏捷开发基础知识篇

Scrum 的定义 Scrum ( 名词): Scrum 是一个框架&#xff0c;在此框架中人们可以解决复杂的自适应难题&#xff0c;同 时也能高效并创造性地交付可能最高价值的产品。 Scrum 是: • 轻量的 • 易于理解的 • 难以精通的 Scrum 是一个框架&#xff0c;自上世纪 90 年代初以来&…

小团队SCRUM敏捷开发项目管理

概述 单团队敏捷开发主要是针对10人以下、只有一个Scrum团队的小型产品或项目的敏捷开发。 对于小型团队来说&#xff0c;在Leangoo中创建一个单团队敏捷开发项目就可以很好地支持团队产品或项目的开发。 适用场景 适用于单个团队进行Scrum敏捷开发协作&#xff0c;Leangoo项目…

实施Scrum敏捷开发的关键要素

一、敏捷开发由来 2001年2月11日至13日&#xff0c;美国犹他州瓦萨奇山雪鸟滑雪胜地&#xff0c;17个人聚到一起&#xff0c;试图找到软件开发的共识&#xff0c;最终的成果就是《敏捷软件开发宣言》。参会者们包括来自于极限编程、Scrum、DSDM、自适应软件开发、水晶系列、特征…