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

简介:

 

JOptionPane类是Swing程序设计中进行弹窗设置的主要方式,本文将详细对Java弹窗进行总结,包括弹窗的设置方法和对内容的读取!敬请阅读!

目录

四种消息提示框

五种消息类型

九种对话框参数

确认对话框

输入对话框

消息对话框

选择对话框

自定义消息图标


Hello!你好哇,我是灰小猿,一个超会写bug的沙雕程序猿!

今天来和大家分享一个Swing程序设计中关于JOptionPane类的使用,该类的作用呢,其实主要就是设置弹窗,所以在这里也就和大家总结了常用的弹窗设置的方法以及JOptionPane类详细使用说明!

话不多说上教程!

JOptionPane类属于Swing组件中的一种,所以导入方式如下:

import javax.swing.JOptionPane;

四种消息提示框

在该类中常用的常用的四种消息提示框为:

showConfirmDialog();

确认对话框

showInputDialog();

输入对话框

showMessageDialog();

消息对话框

showOptionDialog();

选择对话框

五种消息类型

并且每一种消息框都有五种不同的消息类型,消息类型不同时,弹窗所对应的图标也就不同,以下是这五种消息类型:

消息类型

消息参数

显示图标

错误消息

ERROR_MESSAGE

编辑

提示消息

INFORMATION_MESSAGE

编辑

警告消息

WARNING_MESSAGE

编辑

提问消息

QUESTION_MESSAGE

编辑

简约无图标

PLAIN_MESSAGE

无图标,直接显示消息内容

在使用不同类型的消息框时,输入不同的消息类型参数,就可以得到相应的消息框。

九种对话框参数

每一种消息提示框都对应有不同的参数的方法,从而得到不同的效果,但总结起来,这四种消息提示框的方法中都基本需要这九个参数:

参数

含义

parentComponent

对话框所在的容器

Message

对话框现实的内容

Title

对话框标题

Option type

选择按钮类型

Message type

消息类型

Icon

自定义消息图标

initialSelectionValue

默认选项或信息

selectionValues

选择选项

Options

操作选项

因为这四种对话框中所需要的参数都是以上九种,所以接下来对每一种对话框进行分析,

确认对话框

确认对话框(showConfirmDialog)有以下四种构造函数,其中的参数与上表相对应:

1、JOptionPane.showConfirmDialog(parentComponent, message)
2、JOptionPane.showConfirmDialog(parentComponent, message, title, optionType)
3、JOptionPane.showConfirmDialog(parentComponent, message, title, optionType,messageType)
4、JOptionPane.showConfirmDialog(parentComponent, message, title, optionType, messageType, icon)

image.gif

实例如下:

JOptionPane.showConfirmDialog(null,"这是确认对话框吗?","提示",JOptionPane.OK_OPTION,JOptionPane.QUESTION_MESSAGE);  //确认对话框

image.gif

效果如下:

image.gif编辑

对确认消息对话框消息进行接收的方法:

int userOption =  JOptionPane.showConfirmDialog(null,"这是确认对话框吗?","提示",JOptionPane.OK_OPTION,JOptionPane.QUESTION_MESSAGE);  //确认对话框
//如果用户选择的是OK
if (userOption == JOptionPane.OK_OPTION) {
  System.err.println("是");
}else {
  System.out.println("否");
}

image.gif

输入对话框

输入对话框(showInputDialog)有六种构造函数,分别如下:

1、JOptionPane.showInputDialog(message);
2、JOptionPane.showInputDialog(parentComponent, message);
3、JOptionPane.showInputDialog(message, initialSelectionValue);
4、JOptionPane.showInputDialog(parentComponent,message,initialSelectionValue)
5、JOptionPane.showInputDialog(parentComponent,message, title, messageType);
6、JOptionPane.showInputDialog(parentComponent, message, title, messageType, icon, selectionValues, initialSelectionValue)

image.gif

下面有两个关于该对话框的实例:

1、显示输入框,供用户输入,实例如下:

JOptionPane.showInputDialog(null,"请输入你的生日:","输入",JOptionPane.WARNING_MESSAGE);    //输入对话框

image.gif

效果如下:

image.gif编辑

普通输入框情况下获取用户输入内容的方法:

String info = JOptionPane.showInputDialog(null,"请输入你的生日:","输入",JOptionPane.WARNING_MESSAGE);    //输入对话框
System.out.println(info);

image.gif

2、设置一个下拉框,供用户选择输入,最后一个参数表示下拉框默认显示的内容,实例如下:

String [] options = {"A选项","B选项","C选项","D选项"};
JOptionPane.showInputDialog(null,"请输入你的选项:","提示",JOptionPane.QUESTION_MESSAGE,null,options,options[2]);

image.gif

效果如下:

image.gif编辑

下拉框情况下获取用户输入内容的方法:

String [] options = {"A选项","B选项","C选项","D选项"};
String info =  (String)JOptionPane.showInputDialog(null,"请输入你的选项:","提示",JOptionPane.QUESTION_MESSAGE,null,options,options[2]);
System.out.println(info);

image.gif

消息对话框

消息对话框(showMessageDialog)有三种构造函数,具体如下:

1、JOptionPane.showMessageDialog(parentComponent, message);
2、JOptionPane.showMessageDialog(parentComponent, message, title, messageType);
3、JOptionPane.showMessageDialog(parentComponent, message, title, messageType, icon);

image.gif

实例如下:

JOptionPane.showMessageDialog(null,"这里是消息提示对话框!","消息提示",JOptionPane.WARNING_MESSAGE); //消息对话框

image.gif

效果如下:

image.gif编辑

选择对话框

选择对话框(howOptionDialog)只有一种构造函数如下:

JOptionPane.showOptionDialog(parentComponent, message, title, optionType, messageType, icon, options, initialValue)

image.gif

使用实例如下。最后一个参数表示默认选择的内容,:

String [] options = {"A选项","B选项","C选项","D选项"};
JOptionPane.showOptionDialog(null,"请选择你的选项:","提示",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE,null,options,options[0]);    //选择对话框*/

image.gif

效果如下:

image.gif编辑

选择对话框下获取用户选项的方法:

String [] options = {"A选项","B选项","C选项","D选项"};
int n =  JOptionPane.showOptionDialog(null,"请选择你的选项:","提示",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE,null,options,options[0]);   //选择对话框*/
System.out.println(options[n]);

image.gif

自定义消息图标

自定义对话框图标的方法如下:

ImageIcon icon = new ImageIcon("it.jpg"); //注意设置图片尺寸,50*50px较适合
JOptionPane.showMessageDialog(null, "这是自定义图标!","提示",JOptionPane.WARNING_MESSAGE,icon);
//该消息框的提示图标会被自定义的图标覆盖掉

image.gif

效果如下:

image.gif编辑

关于JOptionPane类中弹窗的使用就先分享到这里,之后还会对其他使用继续更新!

觉得有用记得点赞关注哟!

大灰狼陪你一起进步!

image.gif编辑

目录
相关文章
|
8天前
|
SQL 安全 Java
「滚雪球学Java」教程导航帖(更新2024.07.16)
《滚雪球学Spring Boot》是一个面向初学者的Spring Boot教程,旨在帮助读者快速入门Spring Boot开发。本专通过深入浅出的方式,将Spring Boot开发中的核心概念、基础知识、实战技巧等内容系统地讲解,同时还提供了大量实际的案例,让读者能够快速掌握实用的Spring Boot开发技能。本书的特点在于注重实践,通过实例学习的方式激发读者的学习兴趣和动力,并引导读者逐步掌握Spring Boot开发的实际应用。
22 1
「滚雪球学Java」教程导航帖(更新2024.07.16)
|
7天前
|
测试技术 API Android开发
《手把手教你》系列基础篇(九十七)-java+ selenium自动化测试-框架设计篇-Selenium方法的二次封装和页面基类(详解教程)
【7月更文挑战第15天】这是关于自动化测试框架中Selenium API二次封装的教程总结。教程中介绍了如何设计一个支持不同浏览器测试的页面基类(BasePage),该基类包含了对Selenium方法的二次封装,如元素的输入、点击、清除等常用操作,以减少重复代码。此外,页面基类还提供了获取页面标题和URL的方法。
23 2
|
8天前
|
Web App开发 XML Java
《手把手教你》系列基础篇(九十六)-java+ selenium自动化测试-框架之设计篇-跨浏览器(详解教程)
【7月更文挑战第14天】这篇教程介绍了如何使用Java和Selenium构建一个支持跨浏览器测试的自动化测试框架。设计的核心是通过读取配置文件来切换不同浏览器执行测试用例。配置文件中定义了浏览器类型(如Firefox、Chrome)和测试服务器的URL。代码包括一个`BrowserEngine`类,它初始化配置数据,根据配置启动指定的浏览器,并提供关闭浏览器的方法。测试脚本`TestLaunchBrowser`使用`BrowserEngine`来启动浏览器并执行测试。整个框架允许在不同浏览器上运行相同的测试,以确保兼容性和一致性。
21 3
|
10天前
|
存储 Web App开发 Java
《手把手教你》系列基础篇(九十五)-java+ selenium自动化测试-框架之设计篇-java实现自定义日志输出(详解教程)
【7月更文挑战第13天】这篇文章介绍了如何在Java中创建一个简单的自定义日志系统,以替代Log4j或logback。
34 5
|
6天前
|
Java 数据安全/隐私保护
Java无模版导出Excel 0基础教程
经常写数据导出到EXCEL,没有模板的情况下使用POI技术。以此作为记录,以后方便使用。 2 工具类 样式工具: 处理工具Java接口 水印工具 导出Excel工具类 3 测试代码 与实际复杂业务不同 在此我们只做模拟 Controller Service 4 导出测试 使用Postman进行接口测试,没接触过Postman的小伙伴可以看我这篇博客Postman导出excel文件保存为文件可以看到导出很成功,包括水印 sheet页名称自适应宽度。还有一些高亮……等功能可以直接搜索使用
Java无模版导出Excel 0基础教程
|
13天前
|
设计模式 测试技术 Python
《手把手教你》系列基础篇(九十二)-java+ selenium自动化测试-框架设计基础-POM设计模式简介(详解教程)
【7月更文挑战第10天】Page Object Model (POM)是Selenium自动化测试中的设计模式,用于提高代码的可读性和维护性。POM将每个页面表示为一个类,封装元素定位和交互操作,使得测试脚本与页面元素分离。当页面元素改变时,只需更新对应页面类,减少了脚本的重复工作和维护复杂度,有利于团队协作。POM通过创建页面对象,管理页面元素集合,将业务逻辑与元素定位解耦合,增强了代码的复用性。示例展示了不使用POM时,脚本直接混杂了元素定位和业务逻辑,而POM则能解决这一问题。
29 6
|
11天前
|
设计模式 Java 测试技术
《手把手教你》系列基础篇(九十四)-java+ selenium自动化测试-框架设计基础-POM设计模式实现-下篇(详解教程)
【7月更文挑战第12天】在本文中,作者宏哥介绍了如何在不使用PageFactory的情况下,用Java和Selenium实现Page Object Model (POM)。文章通过一个百度首页登录的实战例子来说明。首先,创建了一个名为`BaiduHomePage1`的页面对象类,其中包含了页面元素的定位和相关操作方法。接着,创建了测试类`TestWithPOM1`,在测试类中初始化WebDriver,设置驱动路径,最大化窗口,并调用页面对象类的方法进行登录操作。这样,测试脚本保持简洁,遵循了POM模式的高可读性和可维护性原则。
15 2
|
2天前
|
存储 算法 Java
Java类是在什么时候加载到JVM中的?加载类时,实际上加载的是什么
Java类是在什么时候加载到JVM中的?加载类时,实际上加载的是什么
|
6天前
|
分布式计算 Java 调度
MaxCompute产品使用合集之使用Tunnel Java SDK上传BINARY数据类型时,应该使用什么作为数据类字节
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
12天前
|
设计模式 Java 测试技术
《手把手教你》系列基础篇(九十三)-java+ selenium自动化测试-框架设计基础-POM设计模式实现-上篇(详解教程)
【7月更文挑战第11天】页面对象模型(POM)通过Page Factory在Java Selenium测试中被应用,简化了代码维护。在POM中,每个网页对应一个Page Class,其中包含页面元素和相关操作。对比之下,非POM实现直接在测试脚本中处理元素定位和交互,代码可读性和可维护性较低。
14 0