黑马程序员__java基础__GUI
2015-06-17 13:24
274 查看
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
GUI
一.GUI的概述
(1)即图形用户界面,用于计算机与用户交互的一种方式。
(2)计算机与用户交互的两种方式:
1.GUI:图形用户接口,用图形方式,来显示计算机操作界面,方便直观。
2. CLI:命令行用户接口,即常见的Dos命令行操作,须记住一些命令,操作不直观。
(3)java将GUI封装为对象,其中的对象都放在了两个包中:java.Awt包和javax.Swing包。
1. java.Awt包:抽象窗口工具包,调用本地系统方法实现功能,属重量级控件。
2.javax.Swing包:在AWT的基础上建立的一套图形界面系统,其中提供了更多的组件,且完全由java实现。
二.布局
(1)常见的布局:
1.FlowLayout:流式布局管理器。从左向右排列,是Panel默认的布局管理器。
2.BorderLayout:边界式布局管理器,东南西北中的排列方式,是Frame的默认布局管理器。
3.GridLayout<
4000
span style="line-height:17.5px;">:网格式布局管理器,规则的矩阵。
4.CardLayout:卡片式布局管理器,即选项卡。
5.GridBayLayout:网格包布局管理器,非规则矩阵。
(2)创建窗体界面的步骤:
1.将窗体Frame进行大区域的划分,设置其布局管理器,加入面板Panel。
2.将组件加入Panel,设置面板的布局管理器。
三.Frame窗体
(1)创建图形化界面:
1.创建Frame窗体。
2.对窗体进行基本设置:如大小,位置,布局等。
3.定义组件。
4.将组件通过窗体的add方法添加到窗体中。
5.让窗体显示,通过setVisible(turn)的方法。
(2)示例:
(1)事件监听机制的特点:
1.事件源:awt或swing包中的那些图形界面组件。
2.事件:每一个事件源都有自己特有的对应事件和共性事件。
3.监听器:将可触发某一事件的动作(不只一个动作),都封装到侦听器中。
4.事件处理:引发事件后的处理方式。
(2)窗体、按钮添加监听器的例子
GUI
一.GUI的概述
(1)即图形用户界面,用于计算机与用户交互的一种方式。
(2)计算机与用户交互的两种方式:
1.GUI:图形用户接口,用图形方式,来显示计算机操作界面,方便直观。
2. CLI:命令行用户接口,即常见的Dos命令行操作,须记住一些命令,操作不直观。
(3)java将GUI封装为对象,其中的对象都放在了两个包中:java.Awt包和javax.Swing包。
1. java.Awt包:抽象窗口工具包,调用本地系统方法实现功能,属重量级控件。
2.javax.Swing包:在AWT的基础上建立的一套图形界面系统,其中提供了更多的组件,且完全由java实现。
二.布局
(1)常见的布局:
1.FlowLayout:流式布局管理器。从左向右排列,是Panel默认的布局管理器。
2.BorderLayout:边界式布局管理器,东南西北中的排列方式,是Frame的默认布局管理器。
3.GridLayout<
4000
span style="line-height:17.5px;">:网格式布局管理器,规则的矩阵。
4.CardLayout:卡片式布局管理器,即选项卡。
5.GridBayLayout:网格包布局管理器,非规则矩阵。
(2)创建窗体界面的步骤:
1.将窗体Frame进行大区域的划分,设置其布局管理器,加入面板Panel。
2.将组件加入Panel,设置面板的布局管理器。
三.Frame窗体
(1)创建图形化界面:
1.创建Frame窗体。
2.对窗体进行基本设置:如大小,位置,布局等。
3.定义组件。
4.将组件通过窗体的add方法添加到窗体中。
5.让窗体显示,通过setVisible(turn)的方法。
(2)示例:
/** * 创建图形化界面 */ import java.awt.*; public class AwtDemo { public static void main(String[] args) { Frame f=new Frame("窗体");//创建Frame窗体,括号可设置文字 f.setSize(600, 400);//设置大小 f.setLocation(300, 300);//设置窗体的位置 f.setLayout(new FlowLayout());//设置布局 Button b=new Button("按钮");//定义按钮组件 f.add(b);//将按钮组件添加到Frame窗体中 f.setVisible(true);//设置窗体显示 } }四.事件监听机制
(1)事件监听机制的特点:
1.事件源:awt或swing包中的那些图形界面组件。
2.事件:每一个事件源都有自己特有的对应事件和共性事件。
3.监听器:将可触发某一事件的动作(不只一个动作),都封装到侦听器中。
4.事件处理:引发事件后的处理方式。
(2)窗体、按钮添加监听器的例子
/** * 创建图形化界面,实现窗体,按钮都可以退出功能 */ import java.awt.*; import java.awt.event.*; class FrameDemo { public static void init() { //创建窗体、按钮 Frame f=new Frame("窗体"); f.setBounds(300, 300, 600, 400); f.setLayout(new FlowLayout()); Button b=new Button("退出按钮"); f.add(b); f.setVisible(true); //添加窗体监听器,让窗体具备退出功能 f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } } ); //添加按钮监听器,让按钮具备退出功能 b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); } public static void main(String[] args) { init(); } }(3)在窗体中列出指定目录内容、错误时弹出对话框的列子
import java.awt.*; import java.awt.event.*; import java.io.*; public class MyWindowDemo { private Frame f; private Button b,okb; private TextField tf; private TextArea ta; private Dialog d; private Label l; MyWindowDemo() { init(); } public void init() { //设置窗体 f=new Frame("窗体"); f.setBounds(300, 300, 600, 400); f.setLayout(new FlowLayout()); //窗体里的按钮 b=new Button("转到"); //窗体里的文本框 tf=new TextField(50); //窗体里的文本区域 ta=new TextArea(20,60); f.add(tf); f.add(b); f.add(ta); //设置对话框 d=new Dialog(f,"提示信息",true); //对话框里的文本框 l=new Label(); //对话框里的按钮 okb=new Button("确定"); d.setBounds(250, 350, 200, 200); d.setLayout(new FlowLayout()); d.add(l); d.add(okb); MyEvent(); f.setVisible(true); } public void MyEvent() { //窗体按钮的监听事件 b.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { String dirPath=tf.getText();//窗体文本框输入信息 File dir=new File(dirPath); if(dir.isDirectory() && dir.exists())//目录存在且为目录形式 { ta.setText(""); String[] names=dir.list(); for(String name:names)//遍历目录列表 { ta.append(name+"\r\n");//窗体文本区域显示目录列表信息 } } else { String info="你输入的信息:"+dirPath+"是错误的"; l.setText(info);//对话框文本框中显示错误提示 d.setVisible(true); } } }); //对话框中按钮的鼠标监听器 okb.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { d.setVisible(false);//对话框消失 } }); //对话框关闭监听器 d.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { d.setVisible(false); } }); //窗体关闭监听器 f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } public static void main(String[] args) { new MyWindowDemo(); } }
相关文章推荐
- UIViewContentMode各类型效果
- xquery
- 【uiautomator】UiSelector
- UIImagePickerController
- shiro注解@RequiresPermissions多权限任选一参数用法<转>
- Codeforces Round #243 (Div. 1)——Sereja and Two Sequences
- UESTC_Just a Maze CDOJ 1162
- 不能说的秘密:UEditor和UltraEdit
- IBM Juices Hadoop With Java On Tesla GPUs
- cruisecontrol的搭建和使用
- implement a queue using stack
- bzoj1367 [Baltic2004]sequence [左偏树]
- implement a stack using queue
- cordova android ant 打包出现 build.xml:694: ${aapt}错误
- Guessing Game
- UIManager的字体颜色参数对照表
- Test Design Guidelines for Reusability
- Bluetooth--- Android 蓝牙开发基本流程
- C#中的“\”、@、break、continue
- UITableViewStyleGrouped 模式下 headview 多出一块高度问题