上面我们讲述了通过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. dom入门

    当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). //显示,改变html内容 document.getElementById("p1" ...

  2. C/C++语言的标准库函数malloc/free与运算符new/delete的区别

    概括地说 1.malloc与free是C++/C的标准库函数,new/delete是C++的运算符,它们都可用于申请动态内存和释放内存. 2.对于非内部数据类型的对象而言,只用malloc/free无 ...

  3. mahout与nosql的两幅经典图形

  4. Linux下利用nc命令来监控检测服务器的端口使用情况(转载)

    最近碰到一个项目,前端用apache htttpd进行发布(80端口),通过双机负载均衡转发到后端的两个tomcat进行处理(8081和8082端口),现在需要随时监控这三个端口的情况,一旦down掉 ...

  5. 《Windows驱动开发技术详解》之Windows内存管理

    虚拟内存地址 Windows所有的程序(Ring0和Ring3层)可以操作的都是虚拟内存.有一部分单元会和物理内存对应起来,但并非一一对应,多个虚拟内存页可以映射同一个物理内存页.还有一部分单元会被映 ...

  6. 《C++ Primer》之面向对象编程(二)

    构造函数和复制控制 每个派生类对象由派生类中定义的(非 static)成员加上一个或多个基类子对象构成,当我们构造.复制.赋值和撤销一个派生类对象时,也会构造.复制.赋值和撤销这些基类子对象. 构造函 ...

  7. 自定义VBS脚本(统计在指定文件中搜索字符串出现的次数)

    '=========================================================================='' VBScript Source File - ...

  8. VMware中Ubuntu 14.04出现Unknown Display问题解决

    如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 今天安装完Ubuntu 14.04后,在虚拟机中显示不全,本来调节一下屏幕分辨率就可以 ...

  9. jsp第1讲(上集)

    jsp讲解框架 (一)Java EE核心十三种技术介绍 (二)Java EE程序员修炼成精的法门 (三)jsp版本的用户管理系统演示 (四)jsp概述 (五)jsp的运行原理 (六)jsp版的计算器 ...

  10. 第3章 Java语言基础----static

    1.static只能声明成员变量,不能声明局部变量,如下图所示: 2.如果变量在类中用static中定义过,那么在方法中就可以直接赋值了:如果没有在类中定义,则不能在方法中使用,还得重新定义,如下图所 ...