黑马程序员-GUI编程总结

来源:互联网 发布:为什么网络ip地址冲突 编辑:程序博客网 时间:2024/06/14 07:05
-------android培训java培训、期待与您交流!-------

一、基本概述:

GUI   :Graphical User Interface(图形用户接口)。

用图形的方式,来显示计算机操作的界面,这样更方便更直观。

CLI   :Command line User Interface (命令行用户接口)

即常见的Dos命令行操作,需要记忆一些常用的命令,操作不直观。

举例:创建文件夹(md)、删除文件夹(rd),而删除文件(del)等

 

Java开发GUI工具:

Java为GUI提供的对象都存在java.Awt和javax.Swing两个包中。

java.Awt  :Abstract Window ToolKit (抽象窗口工具包),需要调用本地系统方法实现功能。属重量级控件

javax.Swing : 在AWT的基础上,建立的一套图形界面系统,其中提供了更多的组件,而且完全由Java实现增强了移植性,属轻量级控件

 

二、GUI工具体系:

1、Awt组件体系:(Swing基本上与Awt类似,功能类似而名称稍有差异)


功能体系简概:

Component: 构件、组件:

1、Container(容器/控件,可添加其他组件,通过add方法)   

      Window窗口     Panel面板

Frame框架   Dialog对话框

             FileDialog文件对话框

 

2、功能组件:

 

Button按钮;

Label标签(封装文字的小框格) ;

Checkbox复选框(即多选框,即是否打钩那种)

        TextComponent文本组件;

TextArea文本区域   TextFileld文本框(单行)

 

PS: Container常用子类:Window  Panel(面板,不能单独存在)。

Window常用子类:Frame Dialog。

2、窗体下的菜单体系:

MenuComponent : 菜单组件;

|——MenuBar : 菜单栏(类似垂直菜单,可添加菜单项或菜单);

|——MenuItem : 菜单项,子菜单;

|——Menu : 菜单(可添加其他菜单或菜单项);

流程:  先创建菜单栏,再创建菜单,每一个菜单中建立菜单项。

 

3、布局管理器:

容器中的组件的排放方式,就是布局。

常见的布局管理器:

1、FlowLayout(流式布局管理器): 从左到右的顺序排列,Panel默认布局。

2、BorderLayout(边界布局管理器): 东、南、西、北、中,Frame默认布局。

3、GridLayout(网格布局管理器): 规则的矩阵。

4、CardLayout(卡片布局管理器): 选项卡。

5、GridBagLayout(网格包布局管理器): 非规则的矩阵,即常用的自由式布局,通常配合编程软件的“画布”来实现自由移动。

 

 

三、组件创建的基本设置:

1、界面基本操作

A、创建Frame窗体并命名窗体;

B、窗体进行基本设置: 大小、位置、布局以及是否显示窗体等;

C、定义组件: 按钮,文本组件、复选框等

D、通过窗体add方法,添加组件到窗体中。

2、事件监听机制:

事件源(组件): AWT包或者Swing包中的那些图形界面组件,例: 按钮等;

事件(Event) : 每一个事件源都有自己特有的对应事件和共性事件

监听器(Listener) : 触发某个事件的动作(不止一个动作),例:双击或移动到指定区域;

事件处理(引发事件后处理方式):通常就是触发事件后事件执行方法的内容;

 Java基础总结12鈥斺擥UI编程


   1、在MyEclipse下工程包右键创建Matisse Form(GUI画布),根据需要可选择JFrame等作为窗体,在命名的.java文件下可自由切换Source(编程)和Design(排版GUI组件)窗口。

         【此时通常是切换到MyElipse Swing /Matisse透视图下】

2、在Design窗口下,可从右侧的Matisse Palette窗口选择需要的组件(包括菜单体系)并使用,根据需要移动调整组件位置。

3、选择组件,右键—>从Events中选择需要的监听器,自动跳到Source编程窗口下,可编写事件处理方法。

 

四、方法代码与示例:  

1、创建Frame窗体: 

Frame f = new Frame(“my window”);  //创建窗体,并命名;

f.setLayout(new FlowLayout());   //设置布局,选择流式布局;

f.setSize(500,400);             //设置窗体大小(左为横向坐标,右为纵向坐标);

f.setLocation(300,200);        //设置窗体在屏幕的初始化位置;

f.setVisible(true);           //继承Window方法,窗体是否可见?


原创粉丝点击