Java Swing中几种常见对话框(文件对话框、消息对话框、输入对话框、确认对话框、颜色对话框)

2024-09-01 13:32

本文主要是介绍Java Swing中几种常见对话框(文件对话框、消息对话框、输入对话框、确认对话框、颜色对话框),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、Dialog类主要方法

       JDialog类和JFrame都是Windows的子类,二者的实例都是底层容器,但二者有相似之处也有不同的地方,主要区别是JDialog类创建的对话框必须要依靠于某个窗口。

       创建对话框与创建窗口类似,通过建立JDialog的子类来建立一个对话框类,然后这个类的一个实例就是一个对话框。对话框是一个容器,它的默认布局是BorderLayout,对话框可以添加组件,实现与用户的交互操作。需要注意的是,对话框可见时,默认地被系统添加到显示器屏幕上,因此不允许将一个对话框添加到另一个容器中。

JDialog():构造一个无标题的初始不可见的对话框。对话框依赖一个默认的不可见的窗口,该窗口由Java运行环境提供。

JDialog(JFrame owner):构造一个无标题的初始不可见的无模式的对话框。owner是对话框所依赖的窗口。

JDialog(JFrame owner, String title):构造一个具有标题title的初始不可见的无模式的对话框,owner是对话框所依赖的窗口。

JDialog(JFrame owner, String title, boolean modal):构造一个具有标题title的初始不可见的对话框,owner是对话框所依赖的窗口,modal决定对话框有无模式。

getTitle():获取对话框的标题。

setTitle():设置对话框的标题。

setModal(boolean):设置对话框的模式。

setSize():设置对话框的大小。

setVisible(boolean b):显示或隐藏对话框。

public void setJMenuBar(JMenuBar menu):对话框添加菜单条。

2、对话框模式

       对话框分为无模式和有模式两种。

       如果一个对话框是有模式的,那么当这个对话框处于激活状态时,只让程序响应对话框内部的事件,而且将堵塞其它线程的执行,用户不能再激活对话框所在程序中的其它窗口,直到该对话框消失不可见。

       无模式对话框处于激活状态时,能再激活其它窗口,也不堵塞其它线程执行。

3、文件对话框(FileDialog)

       文件对话框是一个从文件中选择文件的界面,文件对话框事实上并不能打开或保存文件,它只能得到要打开或保存的文件的名字或所在的目录,要想真正实现打开或保存文件,还必须使用输入、输出流。

       javax.swing包中的JFileChooser类可以创建文件对话框,使用该类的构造方法JFileChooser()创建初始不可见的有模式的文件对话框。showSaveDialog(Component a), showOpenDialog(Component a)都可使得对话框可见,但外观有所不同。showSaveDialog(Component a)方法提供保存文件的界面,showOpenDialog(Component a)方法提供打开文件的界面。参数a指定对话框可见时的位置。
       当用户单击文件对话框上的“确定”、“取消”按键或关闭图标,文件对话框将消失,方法返回:JFileChooser.APPROVE_OPTION和JFileChooser.CANCEL_OPTION之一。当返回值是JFileChooser.APPROVE_OPTION时,可以使用JFileChooser类的getSelectedFile()得到文件对话框所选择的文件。

FileDialog是Dialog的子类,主要方法有:
  1、FileDialog(Frame f,String s,int mode):构造方法,f为所依赖的窗口对象,s是对话框的名字,mode取值为FileDialog.LOAD或FileDialog.SAVE。
  2、public String getDirwctory():获取当前对话框中所显示的文件目录。
  3、public String getFile():获取对话框中显示的文件的字符串表示,如不存在则为null。

4、消息对话框

       消息对话框是有模式对话框,进行一个重要的操作动作之前,弹出一个消息对话框。可以用javax.swing包中的JOptionPane类的静态方法。

public static void showMessageDialog(Component parentComponent,String message, String title, int messageType);

Component parentComponent:消息对话框依赖的组件

String message: 要显示的消息

String title:对话框的标题

int messageType):对话框的外观,取值如下:

JOptionPane.INFORMATION_MESSAGE

JOptionPane.WARNING_MESSAGE

JOptionPane.ERROR_MESSAGE

JOptionPane.QUESTION_MESSAGE

JOptionPane.PLAIN_MESSAGE

5、输入对话框

       输入对话框含有供用户输入文本的文本框、一个“确定”和“取消”按钮,是有模式对话框。当输入对话框可见时,要求用户输入一个字符串。javax.swing包中的JOptionPane类静态方法:

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

Component parentComponent:指定输入对话框所依赖的组件。

Object message:指定对话框上的提示信息。

String title:对话框上的标题。

int messageType:确定对话框的外观,取值如下:

ERROR_MESSAGE

INFORMATION_MESSAGE

WARNING_MESSAGE

QUESTION_MESSAGE

PLAIN_MESSAGE

6、确认对话框

       确认对话框是有模式对话框,可以用javax.swing包中的JOptionPane类的静态方法创建:
  public static int showConfirmDialog(Component parentComponent, Object message, String title, int optionType);

Component parentComponent:对话框所依赖的组件。

Object message:对话框上显示的消息

String title:对话框的标题

int optionType):对话框的外观,取值如下

JOptionPane.YES_NO_OPTION

JOptionPane.YES_NO_CANCEL_OPTION

JOptionPane.OK_CANCEL_OPTION

当对话框消失后,showConfirmDialog方法会返回下列整数之一:

JOptionPane.YES_OPTION

JOptionPane.NO_OPTION

JOptionPane.CANCEL_OPTION

JOptionPane.OK_OPTION

JOptionPane.CLOSED_OPTION

7、颜色对话框

      使用java.swing包中的JColorChooser类表静态方法创建:

  public static Color showDialog(Component component,String title,Color initialColor); 

Component component:对话框所依赖的组件。

String title:对话框的标题。

Color initialColor):对话框消失后返回的默认颜色

注意:在上面的所有message中,都可以用JLabel来代替字符串。

这篇关于Java Swing中几种常见对话框(文件对话框、消息对话框、输入对话框、确认对话框、颜色对话框)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1127069

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影