上面我们讲述了通过JOptionPane进行文本I/O操作,一个是通过JOptionPane来获取的

参考链接:http://blog.sina.com.cn/s/blog_993d254201013pgh.html#cmt_3339216

JOptionPane类

 

1、属于javax.swing 包。

2、功能:定制四种不同种类的标准对话框。

ConfirmDialog 确认对话框。提出问题,然后由用户自己来确认(按"Yes"或"No"按钮)

InputDialog 提示输入文本

MessageDialog 显示信息

OptionDialog 组合其它三个对话框类型。

3、这四个对话框可以采用showXXXDialog()来显示。如:

showConfirmDialog() 显示确认对话框、

showInputDialog() 显示输入文本对话框、

showMessageDialog() 显示信息对话框、

showOptionDialog() 显示选择性的对话框。

4、参数说明。  

(1)ParentComponent:指示对话框的父窗口对象,一般为当前窗口。

也可以为null即采用缺省的Frame作为父窗口,此时对话框将设置在屏幕的正中。
 (2)message:指示要在对话框内显示的描述性的文字
 (3)String title:标题条文字串。
 (4)Component:在对话框内要显示的组件(如按钮)
 (5)Icon:在对话框内要显示的图标
 (6)messageType(图标):

ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、

QUESTION_MESSAGE、PLAIN_MESSAGE、
 (7)optionType:对话框底部显示的按钮选项。

DEFAULT_OPTION、YES_NO_OPTION、YES_NO_CANCEL_OPTION、OK_CANCEL_OPTION。

5、使用实例:
(1) 显示MessageDialog

JOptionPane.showMessageDialog( null , "要显示的信息内容" ,"标题" , JOptionPane.ERROR_MESSAGE) ;

(2) 显示ConfirmDialog

JOptionPane.showConfirmDialog( null , "message" , "标题", OptionPane.YES_NO_OPTION ) ;

(3) 显示OptionDialog:

该种对话框可以由用户自己来设置各个按钮的个数并返回用户点击各个按钮的序号(从0开始计数)

Object[] options = {"查询","存款","取款","退出"};

int response=JOptionPane.showOptionDialog ( null, " 选择业务类型","ATM 取款机",JOptionPane.YES_OPTION ,JOptionPane.PLAIN_MESSAGE,

null, options, options[0] ) ;

if (response == 0)

{JOptionPane.showMessageDialog(null,"您按下了查询按钮");}

else if(response == 1)

{JOptionPane.showMessageDialog(null,"您按下了存款按钮");}

else if(response == 2)

{JOptionPane.showMessageDialog(null,"您按下了取款按钮");}

else if(response == 3)

{JOptionPane.showMessageDialog(null,"您按下了退出按钮");}

(4) 显示InputDialog 以便让用户进行输入

String inputValue = JOptionPane.showInputDialog("Please input a value");

(5) 显示InputDialog 以便让用户进行选择地输入

Object[] possibleValues = { "First", "Second", "Third" } ;

//用户的选择项目

Object selectedValue = JOptionPane.showInputDialog(null,

"Choose one", "Input", JOptionPane.INFORMATION_MESSAGE ,

null, possibleValues , possibleValues[0]);

setTitle (" 您按下了 " + (String)selectedValue+"项目") ;}

那么当我们将图形框绘制出来后我们就应该要对它进行上色了。

 package 一个事例图形小应用程序;
import javax.swing.JApplet;
import java.awt.Color;
import java.awt.Graphics; public class 绘制图形 extends JApplet{
public void paint(Graphics canvas){
canvas.setColor(Color. yellow);
canvas.drawOval(100,50,200,200);
canvas.setColor(Color.BLACK);
canvas.fillOval(155, 100, 10, 20);
canvas.setColor(Color.BLUE);
canvas.fillOval(230,100,10,20);
canvas.setColor(Color.RED);
canvas.drawArc(150, 160, 100, 50, 180, 180);
}
}

在这里我们是使用了setColor方法,canvas.setColor(Color.yellow);是将颜色设置为黄色。

java工程开发之图形化界面之(第三课)的更多相关文章

  1. java工程开发之图形化界面之(第二课)

    上一节主要是讨论小的应用程序,在这里我们将采用一种全新的方式来重新编写它. 在这里我们注重关注JFrame和JOptionPane.这些类提供了在JAVA应用程序使用图形的方法以及在JAVA程序中对I ...

  2. java工程开发之图形化界面之(第一课)

    下面我们先上代码: package 一个事例图形小应用程序; import javax.swing.JApplet; import java.awt.Graphics; public class 绘制 ...

  3. java工程开发之图形化界面之(第五课)

    下面我们将: 一)更加完整的解释Graphics类 二)使用方法来更清晰的重新编写前面图形小应用程序之一 三)介绍一些其他的绘图的方法 四)介绍方法init,它是类似于paint但是用于不同用途的另一 ...

  4. java工程开发之图形化界面之(第四课)

    本节中,我们将创建一个小应用程序,它使用循环生成其图案.我们将使用if语句和setColor方法.同时我们将介绍drawString方法,并使用它在小应用程序窗口中写出文本. 下面的小应用程序是显示一 ...

  5. 黑马程序员:Java基础总结----GUI图形化界面

    黑马程序员:Java基础总结 GUI图形化界面   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流!   GUI(Graphical User Interface)图形化界 ...

  6. PySide——Python图形化界面入门教程(三)

    PySide——Python图形化界面入门教程(三) ——使用内建新号和槽 ——Using Built-In Signals and Slots 上一个教程中,我们学习了如何创建和建立交互widget ...

  7. Java 图形化界面设计(GUI)实战练习(代码)

    关于Java图形化界面设计,基础知识网上可搜,下面简单介绍一下重点概念,然后就由浅入深代码实例. 程序是为了方便用户使用的,Java引入图形化界面编程. 1.JFrame 是容器类 2.AWT 是抽象 ...

  8. 转:二十七、Java图形化界面设计——容器(JFrame)

    转:http://blog.csdn.net/liujun13579/article/details/7756729 二十七.Java图形化界面设计——容器(JFrame) 程序是为了方便用户使用的, ...

  9. 二十七、Java图形化界面设计——容器(JFrame)

    摘自http://blog.csdn.net/liujun13579/article/details/7756729 二十七.Java图形化界面设计--容器(JFrame) 程序是为了方便用户使用的, ...

随机推荐

  1. opencv使用convexityDefects计算轮廓凸缺陷

    引自:http://www.xuebuyuan.com/1684976.html http://blog.csdn.net/lichengyu/article/details/38392473 htt ...

  2. Webdriver实现下载功能,屏蔽掉windows弹出的对话框,FireFox下设置浏览器的属性,两种实现方式:

    一.使用一个全新的FireFox浏览器打开Web应用,浏览器不带任何插件,也未对浏览器做任何默认配置,但需要对浏览器属性进行配置 // 获取浏览器的所有配置文件 ProfilesIni allProf ...

  3. C/C++宏定义中#与##区别 .

    // #表示:对应变量字符串化// ##表示:把宏参数名与宏定义代码序列中的标识符连接在一起,形成一个新的标识符 #define U_BOOT_CMD_MKENT_COMPLETE(name,maxa ...

  4. 抓包工具Fidder详解(主要来抓取Android中app的请求)

    今天闲着没吊事,来写一篇关于怎么抓取Android中的app数据包?工欲行其事,必先利其器,上网google了一下,发现了一款神器:Fiddler,这个貌似是所有软件开发者必备神器呀!这款工具不仅可以 ...

  5. select 1 from table

    1.select 1 from mytable;与select anycol(目的表集合中的任意一行) from mytable;与select * from mytable 作用上来说是没有差别的, ...

  6. shell脚本学习(二)

    4.cat命令 1)  cat -s    摆脱多余的空白行 2)  cat -T    将制表符显示为^I 3)  cat -n    显示行号 4) cat -b    跳过空白行,然后显示行号 ...

  7. ASP.NET MVC View向Controller提交数据

    我们知道使用MVC的一个很重的的用途就是把Controller和View之间进行解耦,通过控制器来调用不同的视图,这就注定了Controller和View之间的传值是一个很重的知识点,这篇博文主要解释 ...

  8. LeetCode OJ 83. Remove Duplicates from Sorted List

    Given a sorted linked list, delete all duplicates such that each element appear only once. For examp ...

  9. Bank Interest

    Bank Interest Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 131072/65536K (Java/Other) Tota ...

  10. Github建站全攻略

    本系列为原创,发表在我的github主页,详细介绍了如何在github上建立个人网站,还包括域名绑定.评论功能.站内搜索等辅助功能的介绍,欢迎交流.   一步步在GitHub上创建博客主页(6) 本篇 ...