下面主要用到了java中的swing进行界面设计,当然java的GUI不如C#的设计的好看,不过原理还是要会的。

1. GUI Graphical User Interface 用户图形界面

a) 主要包括菜单栏,窗口,工具条,按钮等;

b) Java提供了两个GUI开发的包 java.awt 和 java.swing, java.awt中的Component抽象类是javaGUI中所有类的父类。它规定了所有GUI组件的的的基本特性 j        ava.swing 是在java.awt 的基础上构建起来的,引入了许多新的功能和新的特性

c) GUI组件

i. 基本组件:在其控件中不能容纳其他组件,如按钮,文本框等

ii. 容器:可以在其上面添加其他组件,如窗口,对话框等;

2. Swing容器和组件

a) 创建顶层容器(窗口的实现)------类JFrame的使用

i. 实例:JFrame frame = new JFrame(String title);

ii. setLocation(int x, int y) 设置窗体的显示位置

iii. setSize(int width, int height) 设置窗体的大小

iv. setVisible(Boolean b)  设置窗体是否可见

v. 获得内容面板:Container con=fram.getContentPane();在内容面板上添加组件

b) 基本组件分类

i. 文本输入组件: JTextField---文本框  JPasswordField---密码框   JTextArea---文本域  JLabel---标签

ii. 按钮组件:JButton---普通按钮  JCheckBox---复选框  JRadioButton—单选框  JComboBox –下拉列表框

c) JTextField中常用方法

i. 实例化: JTextField text = new JTextField(int columns);

ii. Public String getText() 获取文本框的内容

iii. Public void setTest(String text)设置文本框的内容

d) JTextArea 中长用方法4

i. 实例化: JTextArea area = new JTextArea(int rows, int columns);

ii. Public String getText() 获取文本域内容

iii. Public void setText(String Text) 设置文本域中的内容

iv. Public void append(String Text)追加内容

            //添加文本域

              JTextArea area = new JTextArea(10,20);

            //设置文本域文字

              area.setText("adfa");

              //追加内容

              area.append("1345");

              area.append("543254");

v.       con.add(area);

e) JCheckBox 复选框

i. 实例化:JCheckBox check = new JCheckBox(String title,Boolean selected);

             //添加复选框

               JCheckBox check = new JCheckBox("男",true);

               con.add(check);   

ii.       con.add(button);

f) JRadioButton 单选框

i. 实例化:JRadioButton radio = new JRadioButton(String titile, Boolean Selected);

g) ButtonGroup按钮组的使用

i. 实例化: ButtonGroup bg = new ButtonGroup();

ii. 把同组的按钮添加在bg中

iii. 再把每个按钮添加在Frame中

               //添加单选按钮组

               ButtonGroup  g = new ButtonGroup();

               JRadioButton radio0 = new JRadioButton("Radio1");

               JRadioButton radio1 = new JRadioButton("Radio2");

               g.add(radio1);

               g.add(radio0);

               con.add(radio1);

               con.add(radio0);

               //添加不同组的单选按钮

               JRadioButton radio3 = new JRadioButton("Radio3");

iv.       con.add(radio3);

h) JComboBox 下拉菜单

i. 实例化:JComboBox cb = new JComboBox(Object[] item);

         con.add(cb);

i) JPanel类是最简单的容器类可容纳各类基本组件,包括其他面板

i. JPanel可以作为面板组件添加至窗体

1. Jframe.getContentPane.add(JPanel p);

2. Jframe.setContentPane(JPanel p);

          //添加面板JPanel

          JPanel p = new JPanel();

          //添加至窗体

          con.add(p);

          //往p上添加内容

3.       p.add(radio3);

4. p = new JPanel(LayoutManager layout);

JavaSE高级之GUI编程的更多相关文章

  1. Java GUI编程中AWT/swing/SWT的优缺点

    http://www.cnblogs.com/dugang/archive/2010/10/22/1858478.html AWT AWT是Abstract Window Toolkit(抽象窗口工具 ...

  2. 【Java】GUI编程

    GUI编程 前言 某koukou老师的任务罢了,好在狂神老师居然有GUI的课,只能说是有救星了. [狂神说Java]GUI编程入门到游戏实战 最好笑的是,老师要求掌握的居然是14年的知识,就连狂神在上 ...

  3. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  4. 1.JAVA之GUI编程概述

          下列内容为本人看毕向东老师java视频教程学习笔记! JAVA GUI图形用户界面编程: Windows 操作系统提供两种操作方式:                             ...

  5. 2.JAVA之GUI编程布局

    布局管理器 容器中的组件排放方式,就是布局 常见的布局管理器: **************************************************** 1.FlowLayout(流式 ...

  6. 3.JAVA之GUI编程Frame窗口

    创建图形化界面思路: 1.创建frame窗体: 2.对窗体进行基本设置: 比如大小.位置.布局 3.定义组件: 4.将组件通过add方法添加到窗体中: 5.让窗体显示,通过setVisible(tur ...

  7. 4.JAVA之GUI编程事件监听机制

    事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...

  8. 5.JAVA之GUI编程窗体事件

    我们回顾下第三篇时的内容: 在3.JAVA之GUI编程Frame窗口中窗体是无法直接关闭的,想要关闭须进程管理器结束进程方式关掉. 现在我们就来解决下这个问题. ******************* ...

  9. 6.JAVA之GUI编程Action事件

    功能:单击一个按钮实现关闭窗口: import java.awt.*; import java.awt.event.*; public class StudyAction { // 定义该图形所需的组 ...

随机推荐

  1. Html5+Css3制作下拉菜单的三种方式

    一.渐变式改变ol的高度 1.外部为ul标签,在每个li里嵌套一个ol列表2.设置外部li左浮动,内部ol标签绝对定位,外部li标签相对定位3.设置ol的高为0,溢出隐藏4.外部li标签:hover ...

  2. Android进程间通讯之messenger

    这两天在看binder,无意间在文档看到messenger这么个东西,感觉这个东西还挺有意思的,给大家分享一下. 平时一说进程间通讯,大家都会想到AIDL,其实messenger和AIDL作用一样,都 ...

  3. bzoj3048+3049+3050

    这套月赛题不是特别难 T1:离散化+单调队列,队列里出现数的种类不超过K+1,找最大的num[a[i]] T2:一眼可以看出BFS+状压DP,还要SPFA预处理出各个块之间的dis T3:线段树,没什 ...

  4. 一篇关于匿名函数(function(){})()不错的文章

    代码如下: (function(){ //这里忽略jQuery所有实现 })(); (function(){ //这里忽略jQuery所有实现 })(); 半年前初次接触jQuery的时候,我也像其他 ...

  5. Hadoop学习笔记—12.MapReduce中的常见算法

    一.MapReduce中有哪些常见算法 (1)经典之王:单词计数 这个是MapReduce的经典案例,经典的不能再经典了! (2)数据去重 "数据去重"主要是为了掌握和利用并行化思 ...

  6. Unicode编码解码在线转换工具

    // Unicode编码解码在线转换工具 Unicode 是基于通用字符集(Universal Character Set)的标准来发展,并且同时也以书本的形式(The Unicode Standar ...

  7. 谈谈UI架构设计的演化

    谈谈UI架构设计的演化 经典MVC 在1979年,经典MVC模式被提出. 在当时,人们一直试图将纯粹描述思维中的对象与跟计算机环境打交道的代码隔离开来,而Trygve Reenskaug在跟一些人的讨 ...

  8. Ubuntu 安装OpenERP

    网上的都TM不靠谱.... 1.用root登录,修改/etc/apt/sources.list 文件 sudo /etc/apt/sources.list u root 注意一定要加U root否则没 ...

  9. Golang与C#之switch区别

    Golang与C#之switch区别 Go是Google开发的一种编译型,可并行化,并具有垃圾回收功能的编程语言. C#是微软公司发布的一种面向对象的.运行于.NET Framework之上的高级程序 ...

  10. 每天一个linux命令(18):locate 命令

    locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案.其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了.在一般的 di ...