Java对话框(JDialog类和JOptionPane类)

合集下载

java创建输入对话框的方法

java创建输入对话框的方法

java创建输入对话框的方法Java是一种通用编程语言,可以用于开发各种应用程序。

其中,用户输入对话框是很常见的一种应用。

Java为开发人员提供了多种方法来创建输入对话框。

本文将介绍其中两种方法:使用JOptionPane和使用JDialog。

一、使用JOptionPane创建输入对话框JOptionPane是Java Swing库中的一个类,提供了很多用于显示对话框的静态方法。

其中,showInputDialog()方法可用于显示一个输入对话框。

该方法的基本语法如下:```public static String showInputDialog(Component parentComponent, Object message, String title, int messageType);```其中,参数parentComponent表示该对话框的父组件;参数message 表示对话框显示的消息;参数title表示对话框的标题;参数messageType表示对话框的类型。

该方法返回用户输入的字符串。

接下来,我们来看一个简单的例子,该例子将提示用户输入姓名,并在控制台输出用户输入的姓名:```import javax.swing.JOptionPane;public class InputDialogExample {public static void main(String[] args) {String name = JOptionPane.showInputDialog(null, "请输入您的姓名:", "用户姓名", JOptionPane.PLAIN_MESSAGE);System.out.println("您输入的姓名是:" + name);}}```该程序运行时,将显示一个输入对话框,等待用户输入姓名。

用户输入后,程序将在控制台输出用户输入的姓名。

java必须掌握的100个单词

java必须掌握的100个单词

JA V A必须掌握的单词109人阅读JA V A必须掌握的100个单词1. System 系统2. switch 选择3. break 终止本语句4. continue 继续5. package 创建包6. import 导入包7. extends 继承8. public 公共的9. private 私有的10. default 默认的11. protected 受保护的12. static 静态的13. final 最终的14. abstract 抽象的15. interface 定义接口16. implements 实现接口17. try 尝试执行18. catch 可能执行19. finally 一定执行20. throw 抛出异常21. throws 声明异常历史老照片不能说的秘密慈禧军阀明末清初文革晚清22. Integer 整数的包装类23. Character 字符的包装类24. execute 执行25. prepared 准备26. JFrame 窗口27. JPanel 面板28. JScrollPanel 滚动面板29. JLable 标签30. JTextField 文本框31. JTextArea 文本区域32. JButton 按钮33. JRadioButton 单选按钮34. JComboBox 下拉列表35. JList 列表36. JMenu 菜单37. JMenuItem 菜单项38. JDialog 对话窗口39. JOptionPane 弹出式对话框40. Show 显示41. Message 消息42. JPopupMenu 快捷菜单43. JCheckBoxMenuItem 复选菜单项44. JRadioButtonMenuItem 单选菜单项45. JTable 表格46. JTree 树47. Node 节点48. equals 是否相等49. replace 替换50. Object 对象51. Calendar 日历类52. Random 随机数类53. ArrayList 集合类54. LinkList集合类55. Vector集合类56. HashMap集合类57. element 元素58. contains 是否包含59. remove 移除60. delete 删除61. insert 插入62. update 更新63. append 追加64. length长度65. size 尺寸66. path 路径67. InputStream 输入流68. OutputStream 输出流69. BufferedReader 字符流读70. BufferedWriter 字符流写71. Exception 异常72. exists 是否存在73. Error 错误74. Connection 连接75. Statement 语句对象76. ResultSet 结果集77. Driver 驱动78. Manager 管理79. query 查询80. create 新建81. select 选择82. database 数据库83. forward 前进84. layout 布局85. BorderLayout 边框布局86. FlowLayout 流式布局87. GridLayout 表格布局88. row 行89. column 列90. event 事件91. Component 组件92. action 动作93. item 项目94. project 工程95. structure 结构96. properties 属性97. directory 目录98. template 模板99. source 源代码100. container。

java 弹窗方法

java 弹窗方法

java 弹窗方法Java作为一种广泛应用于各种领域的编程语言,提供了丰富的图形用户界面(GUI)组件。

在Java中,弹窗是一种常见的交互方式,可以用来提示用户、获取用户输入或显示信息。

本文将介绍Java弹窗方法的分类、原理以及常见组件的使用方法,并通过实例进行演示。

一、弹窗方法的概述在Java中,弹窗方法主要有两种:1.自带弹窗:Java自带的Swing和JavaFX库提供了许多弹窗组件,如JOptionPane的showMessageDialog、showInputDialog等。

2.自定义弹窗:通过Java的图形界面组件(如JFrame、JDialog等)和事件处理机制来实现。

二、Java弹窗方法的分类与原理1.自带弹窗Java自带的弹窗方法主要位于JOptionPane库中。

这些方法可以方便地创建各种类型的对话框,如信息提示框、输入框等。

以下是几个常用的自带弹窗方法:- showMessageDialog(parent,message,title,buttons):显示一个带有指定信息、标题和按钮的对话框。

- showInputDialog(parent,message,title,defaultValue):显示一个带有指定信息、标题和默认值的输入框。

- showConfirmDialog(parent,message,title,options):显示一个带有指定信息、标题和选项的确认对话框。

2.自定义弹窗自定义弹窗是通过创建JFrame或JDialog组件来实现。

首先创建一个包含弹窗内容的JPanel,然后设置JPanel的边界约束,最后添加到JFrame或JDialog中。

以下是自定义弹窗的简单示例:```javaJFrame frame = new JFrame("自定义弹窗");frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);frame.setSize(300, 200);JPanel panel = new JPanel();panel.setLayout(new BorderLayout());JLabel label = new JLabel("请输入姓名:");JTextField textField = new JTextField(20);panel.add(label, BorderLayout.WEST);panel.add(textField, BorderLayout.EAST);frame.getContentPane().add(panel);frame.setVisible(true);```三、常见Java弹窗组件及使用方法1.JFrame:创建一个独立的窗口,可以设置大小、标题和关闭操作等。

2021年《Java程序设计》复习题答案

2021年《Java程序设计》复习题答案

2021年《Java程序设计》复习题答案《Java 程序设计》复习题一、选择题: 1.哪个关键字可以抛出异常?finallyC、 throwD、 staticA、transientB、 2.对于下列代码:String str1=\ String str2=\String str3=new String(\StringBuffer str4=new StringBuffer(\ 以下表达式的值为 true 的是 A) str1= =str2; C) str2= =str3; 3. B) str1= =str4; D) str3= =str4;。

D.java.rmiJava 的核心包中,提供编程应用的基本类的包是B.java.utilC.java.appletA.ngng包中封装了所有编程应用的基本类;java.util包提供实用程序类和集合类,如系统特性定义和使用、日期函数类、集合等常用工具;java.applet 包为Applet提供执行需要的所有类,。

主要是访问Applet内容的通信类。

java.rmi包提供程序远程方法调用所需的类。

4.下面程序段的输出结果是StringBuffer buf1=new StringBuffer( );System.out.println(buf1.length()); A. 0 5. B. nullC. 16D. 8在编译 Java 程序时,用于指定生成.class 文件位置的选项是。

B.-dC.-verboseD.-vonarnA.-g-g 输出文件中加行号以及局部变量信息,为调试程序时用。

-o 对类文件进行优化编译。

-nowarn 关闭警告信息,只显示错误信息。

-verbose 显示源代码文件和字节码文件的相关信息。

-d<目录>指定存放生成的类(.class)文件的位置6.是正确的(欲构造 ArrayList 类的一个实例,此类继承了 List 接口,下列哪个方法 )A . ArrayList myList=new Object();B. List myList=new ArrayList();C. ArrayList myList=new List();D. List myList=new List();7.不匹配正则表达式“a?b+[.,:]\\\\d”的字符串是。

java JDialog对话框窗口

java  JDialog对话框窗口
JDialog(Dialog owner, String title)
创建一个具有指定标题和指定所有者的无模式对话框。
JDialog(Dialog owner, String title, boolean modal)
创建一个具有指定标题、模式和指定所有者Dialog的对话框。
JDialog(Dialog owner, String title, boolean modal, GraphicsConfiguration gc)
构造方法
说明
JDialog()
创建一个没有标题且没有指定窗体所有者的无模式对话框。
JDialog(Dialog owner)
创建一个没有标题但将指定的Dialog作为其所有者的无模式对话框。
JDialog(Dialog owner, boolean modal)
创建一个具有指定所有者Dialog和模式的对话框。
setContentPane(Container contentPane)
设置contentPane属性。
setDefaultCloseOperation(int operation)
设置当用户在此对话框上启动"close"时默认执行的操作。
setJMenuBar(JMenuBar menu)
设置此对话框的菜单栏。
JDialog(Frame owner, String title)
创建一个具有指定标题和指定所有者的无模式对话框。
JDialog(Frame owner, String title, boolean modal)
创建一个具有指定标题、所有者Frame和模式的对话框。
JDialog(Frame owner, String title, boolean modal, GraphicsConfiguration gc)

java swing常用的9种组件

java swing常用的9种组件

在Java1.0中,已经有一个用于GUI编程的类库AWT(Abstract Window Toolkit),称之为抽象窗口工具箱。

遗憾的是,AWT中的组件(例如按钮,类名为Button)在实现中使用了本地代码(Native Code),这些组件的创建和行为是由应用程序所在平台上的本地GUI工具来处理的。

因此,AWT组件要在不同的平台上提供给用户一致的行为就受到了很大的限制。

同时,AWT组件中还存在很多bug,这就使得使用AWT来开发跨平台的GUI应用程序困难重重。

1996年,SUN公司和Netsacpe公司在一个称为Swing的项目中合作完善了Netsacpe公司原来开发的一套GUI库,也就是现在所谓的Swing组件。

Swing组件和原来的AWT组件完全不同,最大的区别就是Swing组件的实现中没有使用本地代码,这样对底层平台的依赖型就大为降低,并且可以给不同平台的用户一致的感觉。

此外,和原来的AWT相比,Swing 中提供了内容更多、使用更为方便的组件。

在阅读一些书籍时,常会遇到名词JFC(Java Foundation Class)。

JFC的概念是在1997年的JavaOne开发者大会上首次提出的,是指用于构建GUI的一组API。

实际上,Swing只是JFC的一部分,其它的还有二维图形(Java 2D)API以及拖放(Drag and Drop)API等等。

Swing并不是完全取代了AWT,Swing只是使用更好的GUI组件(如JButton)代替AWT 中相应的GUI组件(如Button),并且增加了一些AWT中原来所没有的GUI组件。

并且,Swing 仍使用AWT 1.1的事件处理模型。

虽然现在AWT组件仍得到支持,但是建议在你的应用程序中尽量使用Swing组件和1.1的事件模型。

1.标签(JLabel)标签(JLabel)通常是用来标识另外一个组件的含义。

以在标签上显示文字、图象或是文字图象的组合。

java JOptionPane.showMessageDialog对话框

java  JOptionPane.showMessageDialog对话框
Icon icon =newImageIcon(getClass().getResource("middle.gif"));
JOptionPane.showMessageDialog(null,"自定义图片的信息提示!","信息",
RMATION_MESSAGE, icon);
Strings= (Strialog(this,
"你喜欢什么样的水果?:\n",
"Customized Dialog", JOptionPane.QUESTION_MESSAGE,null,
possibilities,"ham");
StringinputValue= JOptionPane.showInputDialog("请输入一个值:");
JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE,null,
options,// the titles of buttons
options[0]);// default button title
Object[] possibilities = {"苹果","香蕉","橘子"};
JOptionPane.YES_NO_OPTION);
Object[] options = {"Yes, please","No way!"};
intn= JOptionPane.showOptionDialog(this,
"Would you like green eggs and ham?","A Silly Question",

Java语言程序设计(一)自考题模拟16_真题(含答案与解析)-交互

Java语言程序设计(一)自考题模拟16_真题(含答案与解析)-交互

Java语言程序设计(一)自考题模拟16(总分100, 做题时间90分钟)第Ⅰ部分选择题一、单项选择题(在每小题列出的四个备选项中只有一个是符合题目要求的。

)1.Java源文件经编译产生的文件称为______SSS_SINGLE_SELA .obj文件B .exe文件C .java文件D 字节码文件分值: 1答案:D[考点] Java编译[解析] Java源文件经编译产生的文件称为字节码文件。

2.若a是int型变量,计算表达式a=25/3%3后,a为______SSS_SINGLE_SELA 1B 2C 3D 4分值: 1答案:B[考点] Java运算[解析] 运算顺序从左到右,首先计算25/3=8,然后8%3=2。

3.下列说法正确的是______SSS_SINGLE_SELA 实例方法能对类变量和实例变量操作B 实例方法只能对类变量操作C 实例方法只能实例变量操作D 类方法能对类变量和实例变量操作分值: 1答案:A[考点] 实例方法和类方法[解析] 实例方法能对类变量和实例变量操作,而类方法只能操作类变量。

4.将有三个boolean值的数组初始化为true的是______A.boolean [ ]b=new boolean[3]B boolean [ ]b={true,true,true}C.boolean [3]b={true,true,true}D.boolean [ ]b=new boolean[3];b={true,true,true}SSS_SIMPLE_SINA B C D分值: 1答案:B[考点] 数组[解析] boolean类型的数组默认值时false,所以A不对。

声明数组时不能指定数组的大小,所以C不对。

不能给数组名赋值,数组名是个常量,是数组的引用,所以D不对。

5.若有定义Sting tom="I am a good cat";则tom.indexOf("a")的值为______ SSS_SINGLE_SELA 2B 3C 4D 5分值: 1答案:A[考点] 字符串String类[解析] String类提供的s.indexOf(String a)方法用于检测字符串s中首次出现a的位置,从零开始计算。

Java程序设计:第八章 Swing图形界面程序设计

Java程序设计:第八章 Swing图形界面程序设计

原型 public FlowLayout(int align )
描述
FlowLayerout布局时,组件在容器以从左到右,从 上到下的方式排列。 align用于指定行对齐方式, FlowLayout.LEFT表示左 对齐,相应的有右对齐和居中对齐。
java.awt.Container的成员JLabel(2)
JFrame的成员方法
原型
public JFrame( ) public JFrame(String title) public void setDefaultCloseOperation( int operation) public void setSize(int width, int height) public void setVisible(boolean b) public Container getContentPane()
描述 构造一个无标题不可见的框架 构造一个标题为title的框架 设置当关闭框架时的操作,例如operation为 JFrame.EXIT_ON_CLOSE时表示退出程序
设置框架的大小
设置框架是否可见 返回当前框架的内容窗格
7
组件和容器 -JFrame和JLabel(3)
FlowLayout布局的成员方法:
4
组件和容器(3)
一般容器包括: 面板JPanel,滚动窗格JScrollPane,选项卡 窗格JTabbedPane和工具栏JToolBar。
专用容器包括:内部框架(JInternalFrame),分层窗格 (JLayedPane)、根窗格(JRootPane)、玻璃窗格(GlassPane )、内 容窗格(ContentPane)。
描述 构造一个父窗口为owner,标题为title,模式为 modal的对话框。Modal为true表示有模式,为false 表示无模式 设置对话框的大小

swing包的JOptionPane类的作用

swing包的JOptionPane类的作用

语句是:import javax.swing.JOptionPane;之后又定义了一个公共类joptionpane是一类已经编写好的对话框类,使程序更加简便大体有以下几种吧:第一种是显示警告信息的,第二种是要用户确认第三种可确认或取消或放弃,我记得是有三个按钮在上面的第四种输入第五种有选择地输入,JOptionPane.showMessageDialog(null, "在对话框内显示的描述性的文字", "标题条文字串", JOptionPane.ERROR_MESSAGE);JOptionPane.showConfirmDialog(null, "choose one", "choose one", JOptionPane.YES_NO_OPTION);Object[] options = {"确定","取消","帮助"};int response=JOptionPane.showOptionDialog(this, "这是个选项对话框,用户可以选择自己的按钮的个数", "选项对话框标题",JOptionPane.YES_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]);if(response==0){this.setTitle("您按下了OK按钮 ");}else if(response==1){this.setTitle("您按下了Cancel按钮 ");}else if(response==2){this.setTitle("您按下了Help按钮 ");}String inputValue = JOptionPane.showInputDialog("Please input a value");Object[] possibleValues = { "First", "Second", "Third" }; //用户的选择项目Object selectedValue = JOptionPane.showInputDialog(null, "Choose one", "Input",RMATION_MESSAGE, null, possibleValues,possibleValues[0]);setTitle("您按下了"+(String)selectedValue+"项目");(java)Swing中弹出对话框的几种方式与java 对话框 JOptionPane类的api介绍在swing中,基于业务的考量,会有对话框来限制用户的行为及对用户的动作进行提示.Swing中提供了JOptionPane类来实现类似Windows平台下的MessageBox的功能,同样在Java中也有,利用JOptionPane类中的各个static方法来生成各种标准的对话框,实现显示出信息、提出问题、警告、用户输入参数等功能。

jdialog用法

jdialog用法

JDialog是Java Swing 图形用户界面(GUI)库中的一个类,用于创建对话框。

JDialog是一个顶级窗口,可以包含其他组件,如按钮、文本框等。

以下是使用JDialog的一些基本步骤:1.创建JDialog 实例java复制代码JDialog dialog = new JDialog();2.设置对话框的标题java复制代码dialog.setTitle("My Dialog");3.添加内容您可以使用add()方法向对话框添加组件,例如:java复制代码JButton button = new JButton("OK");dialog.add(button);设置对话框的大小4.java复制代码dialog.setSize(300, 200);5.设置对话框的位置java复制代码dialog.setLocationRelativeTo(null); // 这将使对话框在屏幕中央显示6.显示对话框使用setVisible()方法来显示对话框:java复制代码dialog.setVisible(true);7.关闭对话框当您完成对话框的内容并希望关闭它时,可以调用dispose()方法:java复制代码dialog.dispose();8.添加事件监听器例如,为按钮添加一个点击事件监听器:java复制代码button.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {// 在这里处理按钮点击事件dialog.dispose(); // 关闭对话框}});9.模态对话框和非模态对话框•模态对话框:当一个对话框被设置为模态时,它会阻止用户与其他非模态对话框交互,直到该模态对话框被关闭。

这可以通过调用setModal(true)来实现。

java dialog用法

java dialog用法

java dialog用法Java中的Dialog类是一个弹出窗口。

它和普通窗口很相似,但有一些特殊的功能。

您可以使用它来显示有关消息或请求用户输入的窗口。

Dialog类有两个主要的子类:JDialog和JOptionPane。

JDialog是一个顶层容器,类似于Frame,并支持一些额外的对话框特性,例如模式对话框和防止焦点转移。

JOptionPane是一个预先定义的对话框类,其中包括一些常用的选项,例如消息对话框、输入对话框和确认对话框等。

如何使用Dialog:首先,您需要创建一个Dialog对象。

使用以下代码可创建一个简单的对话框:Dialog dialog = new Dialog(frame, "My Dialog", true);在这个例子中,frame是父窗体。

"My Dialog"参数是对话框标题。

最后的参数true表示这是一个模式对话框,这意味着用户必须在对话框关闭之前完成操作。

接下来,您需要添加一些组件(如标签、按钮、文本框)到对话框中。

然后,您可以使用setVisible()函数将对话框显示出来。

dialog.setVisible(true);最后,您需要为对话框添加事件处理程序,例如处理“关闭对话框”按钮的事件。

Dialog类有一些其他的方法,例如pack()用于调整对话框大小,validate()用于验证布局,以及dispose()用于释放对话框的资源并关闭它。

总结:Dialog类是Java Swing API中的弹出窗口类。

它可以让您显示有关消息或请求用户输入的窗口。

Dialog类有两个主要的子类:JDialog和JOptionPane。

JDialog是一个顶层容器,而JOptionPane是一个预先定义的对话框类。

使用Dialog的步骤是创建一个Dialog对象,添加组件,将对话框可见,为对话框添加事件处理程序,然后使用Dialog类的其他方法进行必要的调整和验证。

java 弹窗方法(一)

java 弹窗方法(一)

Java是一种广泛使用的编程语言,它具有强大的功能和灵活的特性。

在Java中,弹窗是一种常见的交互方式,可以用来向用户显示信息或者接收用户的输入。

在本文中,我们将详细介绍Java中实现弹窗的各种方法。

1. 使用JOptionPane类JOptionPane是Java Swing库中的一个类,它提供了丰富的弹窗功能,包括消息框、输入框、确认框等。

使用JOptionPane类可以轻松地创建各种类型的弹窗,并且可以自定义弹窗的标题、按钮和图标等属性。

具体实现方法如下:- 使用()方法可以创建一个消息框,用来向用户显示一条消息。

- 使用()方法可以创建一个输入框,用来接收用户的输入。

- 使用()方法可以创建一个确认框,用来向用户显示一个确认消息,并接收用户的确认或取消操作。

2. 使用AWT库的Dialog类除了使用JOptionPane类外,还可以使用AWT库中的Dialog类来实现弹窗。

Dialog类提供了基本的弹窗功能,可以用来创建自定义的弹窗,并且可以对弹窗进行更加灵活的控制。

具体实现方法如下:- 使用Dialog类的构造方法可以创建一个新的弹窗对象,并设置弹窗的标题、大小和位置等属性。

- 使用Dialog类的setVisible()方法可以将弹窗显示出来,并且可以通过设置为模态弹窗来阻止用户在弹窗未处理完毕时对其他窗口进行操作。

3. 使用JavaFX库的Alert类除了使用Swing和AWT库外,还可以使用JavaFX库中的Alert类来实现弹窗。

Alert类提供了丰富的弹窗功能,并且可以轻松地创建各种类型的弹窗,包括信息框、警告框、确认框等。

具体实现方法如下:- 使用Alert类的构造方法可以创建一个新的弹窗对象,并设置弹窗的类型、标题和内容等属性。

- 使用Alert类的showAndWait()方法可以将弹窗显示出来,并且可以通过设置为模态弹窗来阻止用户在弹窗未处理完毕时对其他窗口进行操作。

joptionpane用法

joptionpane用法

joptionpane用法JOptionPane 用法JOptionPane 是Java 提供的一种窗体界面,它可以提供丰富功能,包括消息提示,对话框,输入和输出框等,使有界面的 Java 应用变得更加容易开发。

JOptionPane 基于Swing 实现的一个容易使用的窗体工具,它可以方便快捷的把信息显示在屏幕上,同时可以回答用户提出的问题,比如确认,输入框等等。

当要用 JOptionPane 弹出窗体时,首先要导入 javax.swing 包,使用 JOptionPane 之前,需要指定以下几个参数:1.信息内容:要显示的相关信息,可以是文本字符串,也可以是组件,甚至是图片等内容;2.标题:你要为窗体设置一个小标题,标题指定了显示的窗口的标题;3.消息类型:可以在窗体中设置不同种类消息,比如消息,警告,错误,询问等;4.选项:用来指定在窗体出现时所能够选择的按钮,一般是确定按钮,取消按钮,关闭按钮等;5.默认选项:选择哪个按钮作为默认的按钮。

JOptionPane 在实际应用中最常见的使用方法有:showMessageDialog():用来显示一个带有对话框的信息,让用户确认或取消操作。

showInputDialog() :用来让用户输入一些字符串信息,输入后可以选择确定或取消按钮。

showOptionDialog():显示带有不同选项的对话框,用户可以从多个选项中选择,也可以对当前对话框提出确认或取消操作。

用 JOptionPane 显示的窗体都是模态的,也就是当窗体显示出来后,只有关闭它,程序才能继续执行,因此它是一种阻塞式的操作。

JOptionPane 工具类提供了一个简单强大的界面,可以方便快捷的构建复杂的界面,使 Java 应用程序变得更加容易开发。

图形用户界面设计

图形用户界面设计
29
中间容器(Jpanel)
1. 将组件添加到JFrame中 2. JPanel的使用
30
1、 将组件添加到JFrame中
方式之一: frame.getContentPane().add(childCom
ponent) 用getContentPane()方法获得JFrame的
内容面板,再对其加入组件,一般只使 用该方式添加组件。
Swing 是为了解决 AWT 存在的问题而 新开发的包,它以 AWT 为基础的。
10
上图列举了AWT和 Swing的关系,也可 以看出Swing是继承自AWT的。主要利 用Swing来设计图形化界面程序。
11
图形化界面设计—容器
1. Java基本类(JFC) 2. AWT和Swing的区别 3. Swing基本框架 4. 图形化设计步骤 5. 组件容器的使用
54
实例:
55
实例:
56
实例二:在中间位置中添加9个按钮
57
58
布局管理器之GRIDLAYOUT(网 格布局)
59
网格布局特点:
使容器中的各组件呈M行×N列的网格状分布。 网格每列宽度相同,等于容器的宽度除以网格
的列数。 网格每行高度相同,等于容器的高度除以网格
的行数。 各组件的排列方式为:从上到下,从左到右。 组件放入容器的次序决定了它在容器中的位置。 l容器大小改变时,组件的相对位置不变,大小
图形用户界面设计
1
Java图形化界面设计——容器 (JFrame)
2
程序是为了方便用户使用的,因此实现 图形化界面的程序编写是所有编程语言 发展的必然趋势,在命令提示符下运行 的程序可以让我们了解java程序的基本 知识体系结构,现在就进入java图形化 界面编程。

java Swing (check,对话框,单选钮,复选框)

java Swing (check,对话框,单选钮,复选框)
面技术 Swing的底层容器用来显示其他组件,上层容 器用来容纳功能组件,Button等组件用来完成 业务操作 JFrame,JPanel,JButton,文本框,布局管 理器的使用
本课目标
单选框 复选框 列表 下拉列表 Data Check 利用对话框与用户交互 高级布局
JList列表框
JComboBox下拉列表
Swing的JComboBox(下拉列表框)组件用来实现在下拉显示的一组列 表选项中进行选择的功能 JList类允许用ComboBoxModel,Array,Vector来构造一个列表 构造函数如下:
JComboBox() JComboBox(ComboBox Model dataModel):用ComboBoxModel构造一个下拉列表 JComboBox(Object[] dataArray):用Array构造一个下拉列表 JComboBox(Vector dataVector) :用Vector构造一个下拉列表
界面窗口验证程序代码验证数据库存储时验证999为什么需要datacheck?维护程序数据的正确性?有利于程序界面的有好可操作性强?尽早发现层序数据的错误提高效率swing中我们可以完成界面datacheck用对话框与用户进行交互jdialog与joptionpane?jdialog与joptionpane都是弹出式对话框都可以完成与用户交互的任务?jdialog使用起来比较繁琐需要用户自己定义对话框的细节但是在完成复杂的对话框设计时jdialog很有优势?joptionpane使用起来相当方便系统已经为用户定义好对话框的细节用户只需指定使用即可?我们在做datacheck时一般使用joptionpanejoptionpane可用于显示各种图标如用于警告消息问题错误和信息等的图标对话框的显示方式?模式对话框9强制用户必需处理对话框的内容否则用户无法进行其他操作对话框与其他应用界面的执行是有先后顺序的?非模式对话框9不强制用户处理对话框的内容用户可以进行其他操作对话框与其他应用界面的执行是无先后顺序的错误对话框joptionpaneshowmessagedialogthis学生编号不能为空

JavaSwing使用总结(转载)

JavaSwing使用总结(转载)

JavaSwing使⽤总结(转载)随笔转载⾃:地址:1. GUI编程引⾔以前的学习当中,我们都使⽤的是命令交互⽅式: 例如:在DOS命令⾏中通过javac java命令启动程序.软件的交互的⽅式: 1. 命令交互⽅式 图书管理系统 2. 图形交互⽅式 ava提供了专业的API⽤于开发图形⽤户界⾯ GUI--> Graphic User Interface 将要了解GUI API的框架结构,以及GUI组件以及组件之间的关系,容器和布局管理器,颜⾊,字体等.2. GUI的分类2.1. AWT Java1.0版本的图形⽤户界⾯库,设计⽬标是帮助程序员编写在所有平台上都能良好表现的GUI程序。

为了实现这个⽬标Java1.0提供了抽象窗⼝⼯具集(AWT),但是这个⽬标并没有达到。

AWT在所有的系统上表现都不好。

因为:最初版本的AWT是在⼀个⽉内构思,设计和实现的(Think in Java )。

Abstract Window Toolkit 抽象窗⼝⼯具集 Java将图形⽤户界⾯相关的类捆绑在了⼀起,放在了⼀个称之为抽象窗⼝⼯具集的库中.AWT适合开发简单的图形⽤户界⾯,并不适合开发复杂的GUI项⽬. 位于: java.awt.* 中,定义了很多的组件类,开发者可以直接创建对象加以使⽤ 缺点: 所有的图形界⾯都依赖于底层的操作系统,容易发⽣于特定平台相关的故障. AWT调⽤本地系统资源⽣成图形化界⾯, 依赖本地平台. 1.02.2. SwingSUN公司对AWT进⾏了升级,基于AWT,推出了⼀种更稳定,更通⽤和更灵活的库.称之为Swing组件库(Swing component)。

既然都是⽤于GUI设计的组件库,那么为了区分Swing组件类和对应的AWT组件类,Swing组件类都已字母J为前缀.位于:javax.swing.* 中,提供了和AWT中等同的所有的组件类,但是类名的前⾯多加了⼀个J.SWING可以跨平台. 1.2我们主要学习Swing GUI组件.3. Java GUI APIGUI API包含的类分为三个部分:组件类(component class) 容器类(container class),和辅助类(helper class)1. 组件类是⽤来创建⽤户图形界⾯的,例如JButton,JLabel,JTextField.2. 容器类是⽤来包含其他组件的,例如JFrame,JPanel3. 辅助类是⽤来⽀持GUI组件的,例如Color,Font3.1. 组件类在图形⽤户界⾯程序中当我们想要创建按钮、复选框和滚动条等这些可以显⽰在屏幕上的对象,该如何创建。

java 弹窗方法

java 弹窗方法

java 弹窗方法在Java中,要创建一个弹窗,可以使用Swing库中的JOptionPane类。

JOptionPane类提供了一系列静态方法,可以方便地创建各种类型的弹窗,如消息框、确认框、输入框等。

下面是几种常见的弹窗方法:1. 消息框:javaJOptionPane.showMessageDialog(null, "这是一个消息框");这个方法会创建一个消息框,其中第一个参数是父组件,null表示没有父组件,第二个参数是要显示的消息。

2. 确认框:javaint result = JOptionPane.showConfirmDialog(null, "你确定要删除吗?");if (result == JOptionPane.YES_OPTION) {// 用户点击了确定按钮// 执行删除操作} else if (result == JOptionPane.NO_OPTION) {// 用户点击了取消按钮// 执行取消操作}这个方法会创建一个确认框,其中第一个参数是父组件,null表示没有父组件,第二个参数是要显示的消息。

方法的返回值是用户点击的按钮,可以通过判断返回值来执行相应的操作。

3. 输入框:javaString input = JOptionPane.showInputDialog(null, "请输入你的姓名:");if (input != null) {// 用户输入了姓名// 执行相应的操作}这个方法会创建一个输入框,其中第一个参数是父组件,null表示没有父组件,第二个参数是要显示的消息。

方法的返回值是用户输入的字符串,可以通过判断返回值是否为null来判断用户是否输入了内容。

以上是几种常见的弹窗方法,你可以根据需要选择适合的方法来创建弹窗。

在桌面右下角弹出提醒框(JAVA)

在桌面右下角弹出提醒框(JAVA)

在桌⾯右下⾓弹出提醒框(JAVA)下⾯为java类,右键运⾏就OK了;1package com.renqiu.ggzy.util;23import java.awt.BorderLayout;4import java.awt.Color;5import java.awt.Cursor;6import java.awt.Dimension;7import java.awt.FlowLayout;8import java.awt.Font;9import java.awt.Point;10import java.awt.event.MouseAdapter;11import java.awt.event.MouseEvent;12import java.awt.event.MouseMotionAdapter;13import java.text.SimpleDateFormat;14import java.util.Date;15import java.util.HashMap;16import java.util.Map;17import javax.swing.BorderFactory;18import javax.swing.ImageIcon;19import javax.swing.JLabel;20import javax.swing.JOptionPane;21import javax.swing.JPanel;22import javax.swing.JScrollPane;23import javax.swing.JTextArea;24import javax.swing.SwingConstants;25import java.awt.Insets;26import java.awt.Toolkit;27import javax.swing.JDialog;2829public class RemindUtil {30private Map<String, String> feaMap = null;31private Point oldP;// 上⼀次坐标,拖动窗⼝时⽤32private TipWindow tw = null;// 提⽰框33private ImageIcon img = null;// 图像组件34private JLabel imgLabel = null; // 背景图⽚标签35private JPanel headPan = null;36private JPanel feaPan = null;37private JPanel btnPan = null;38private JLabel title = null;39private JLabel head = null;40private JLabel close = null;// 关闭按钮41private JTextArea feature = null;42private JScrollPane jfeaPan = null;43private JLabel releaseLabel = null;44private JLabel sure = null;45private SimpleDateFormat sdf = null;4647 {48 sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");49 feaMap = new HashMap<String, String>();50 feaMap.put("name", "企业注册四证联办监管系统");51 feaMap.put("release", sdf.format(new Date()));52 feaMap.put(53 "feature",54 "1.开发环境:windows\n2.开发语⾔:java\n3.开发⼯具:Eclipse4.3\n4.数据库类型:MySql\n5.开发公司:北京云天\n6.联系⽅式:0317-*******");55 }5657public void VersionUtil() {58 init();59 handle();60 tw.setAlwaysOnTop(true);61 tw.setUndecorated(true);62 tw.setResizable(false);63 tw.setVisible(true);64 tw.run();65 }6667public void init() {68// 新建300x220的消息提⽰框69 tw = new TipWindow(300, 220);70 img = new ImageIcon("WebContent/WEB-INF/views/background.gif");71 imgLabel = new JLabel(img);72// 设置各个⾯板的布局以及⾯板中控件的边界73 headPan = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0));74 feaPan = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0));75 btnPan = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0));76 title = new JLabel("流程到期提醒");77 head = new JLabel(feaMap.get("name"));78 close = new JLabel(" x");// 关闭按钮79 feature = new JTextArea(feaMap.get("feature"));80 jfeaPan = new JScrollPane(feature);81 releaseLabel = new JLabel("登录 " + feaMap.get("release"));82 sure = new JLabel("确定");83 sure.setHorizontalAlignment(SwingConstants.CENTER);8485// 将各个⾯板设置为透明,否则看不到背景图⽚86 ((JPanel) tw.getContentPane()).setOpaque(false);87 headPan.setOpaque(false);88 feaPan.setOpaque(false);89 btnPan.setOpaque(false);9091// 设置JDialog的整个背景图⽚92 tw.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE));93 imgLabel.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());94 headPan.setPreferredSize(new Dimension(300, 60));9596// 设置提⽰框的边框,宽度和颜⾊97 tw.getRootPane().setBorder(98 BorderFactory.createMatteBorder(1, 1, 1, 1, Color.gray));99100 title.setPreferredSize(new Dimension(260, 26));101 title.setVerticalTextPosition(JLabel.CENTER);102 title.setHorizontalTextPosition(JLabel.CENTER);103 title.setFont(new Font("宋体", Font.PLAIN, 12));104 title.setForeground(Color.black);105106 close.setFont(new Font("Arial", Font.BOLD, 15));107 close.setPreferredSize(new Dimension(20, 20));108 close.setVerticalTextPosition(JLabel.CENTER);109 close.setHorizontalTextPosition(JLabel.CENTER);110 close.setCursor(new Cursor(12));111 close.setToolTipText("关闭");112113 head.setPreferredSize(new Dimension(250, 35));114 head.setVerticalTextPosition(JLabel.CENTER);115 head.setHorizontalTextPosition(JLabel.CENTER);116 head.setFont(new Font("宋体", Font.PLAIN, 12));117 head.setForeground(Color.blue);118119 feature.setEditable(false);120 feature.setForeground(Color.red);121 feature.setFont(new Font("宋体", Font.PLAIN, 13));122 feature.setBackground(new Color(184, 230, 172));123// 设置⽂本域⾃动换⾏124 feature.setLineWrap(true);125126 jfeaPan.setPreferredSize(new Dimension(250, 80));127 jfeaPan.setBorder(null);128 jfeaPan.setBackground(Color.black);129130 releaseLabel.setForeground(Color.DARK_GRAY);131 releaseLabel.setFont(new Font("宋体", Font.PLAIN, 12));132133// 为了隐藏⽂本域,加个空的JLabel将他挤到下⾯去134 JLabel jsp = new JLabel();135 jsp.setPreferredSize(new Dimension(300, 25));136137 sure.setPreferredSize(new Dimension(110, 30));138// 设置标签⿏标⼿形139 sure.setCursor(new Cursor(12));140141 headPan.add(title);142 headPan.add(close);143 headPan.add(head);144145 feaPan.add(jsp);146 feaPan.add(jfeaPan);147 feaPan.add(releaseLabel);148149 btnPan.add(sure);150151 tw.add(headPan, BorderLayout.NORTH);152 tw.add(feaPan, BorderLayout.CENTER);153 tw.add(btnPan, BorderLayout.SOUTH);154 }155156public void handle() {157// 为更新按钮增加相应的事件158 sure.addMouseListener(new MouseAdapter() {159public void mouseClicked(MouseEvent e) {160 JOptionPane.showMessageDialog(tw, "谢谢,再见");161 tw.close();162 }163164public void mouseEntered(MouseEvent e) {165 sure.setBorder(BorderFactory.createLineBorder(Color.gray)); 166 }167168public void mouseExited(MouseEvent e) {169 sure.setBorder(null);170 }171 });172// 增加⿏标拖动事件173 title.addMouseMotionListener(new MouseMotionAdapter() {174public void mouseDragged(MouseEvent e) {175// TODO Auto-generated method stub176 Point newP = new Point(e.getXOnScreen(), e.getYOnScreen()); 177int x = tw.getX() + (newP.x - oldP.x);178int y = tw.getY() + (newP.y - oldP.y);179 tw.setLocation(x, y);180 oldP = newP;181182 }183 });184// ⿏标按下时初始坐标,供拖动时计算⽤185 title.addMouseListener(new MouseAdapter() {186public void mousePressed(MouseEvent e) {187 oldP = new Point(e.getXOnScreen(), e.getYOnScreen());188 }189 });190191// 右上⾓关闭按钮事件192 close.addMouseListener(new MouseAdapter() {193public void mouseClicked(MouseEvent e) {194 tw.close();195 }196197public void mouseEntered(MouseEvent e) {198 close.setBorder(BorderFactory.createLineBorder(Color.gray)); 199 }200201public void mouseExited(MouseEvent e) {202 close.setBorder(null);203 }204 });205206 }207208public static void main(String args[]) {209// new Test();210 RemindUtil reminUtil = new RemindUtil();211 reminUtil.VersionUtil();212 }213 }214215class TipWindow extends JDialog {216private static final long serialVersionUID = 8541659783234673950L; 217private static Dimension dim;218private int x, y;219private int width, height;220private static Insets screenInsets;221222public TipWindow(int width, int height) {223this.width = width;224this.height = height;225 dim = Toolkit.getDefaultToolkit().getScreenSize();226 screenInsets = Toolkit.getDefaultToolkit().getScreenInsets(227this.getGraphicsConfiguration());228 x = (int) (dim.getWidth() - width - 3);229 y = (int) (dim.getHeight() - screenInsets.bottom - 3);230 initComponents();231 }232233public void run() {234for (int i = 0; i <= height; i += 10) {235try {236this.setLocation(x, y - i);237 Thread.sleep(5);238 } catch (InterruptedException ex) {239 }240 }241// 此处代码⽤来实现让消息提⽰框5秒后⾃动消失242// try {243// Thread.sleep(5000);244// } catch (InterruptedException e) {245//// TODO Auto-generated catch block246// e.printStackTrace();247// }248// close();249 }250251private void initComponents() {252this.setSize(width, height);253this.setLocation(x, y);254this.setBackground(Color.black);255 }256257public void close() {258 x = this.getX();259 y = this.getY();260int ybottom = (int) dim.getHeight() - screenInsets.bottom; 261for (int i = 0; i <= ybottom - y; i += 10) {262try {263 setLocation(x, y + i);264 Thread.sleep(5);265 } catch (InterruptedException ex) {266 }267 }268 dispose();269 }270271 }下⾯为⽤到的背景图⽚本⽂为转载——编辑后的⽂章。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档