GUI(图形用户界面):
--GUI
----Graphical User Interface(图形用户接口)。
----用图形的方式来显示计算机操作页面,这样更方便直观。
--CLI
----Command Line User Interface(命令行用户接口).
----就是Dos命令行操作。
----需要记忆一些常用的命令,操作不直观。
java为GUI提供的对象都在java.Awt和javax.Swing两个包中。
java.Awt:Abstract Window ToolKit(抽象窗口工具包),需要调用本地
系统方法实现功能。属重量级控件。
javax.Swing:在AWT的基础上,建立一套图形界面系统,提供了更多的
组件,而且完全由java实现。增强了移植性,属于轻量级控件。
组件继承关系图:
其中Container中可以添加组件。
布局管理器:
--容器中的组件的排放方式,就是布局。
--常见的布局管理器;
----FlowLayout(流式布局管理器),从左到右的顺序排列,Panel默认的布局管理器。
----BorderLayout(边界布局管理器),东,西,南,北,中。Frame默认的布局管理器。
----GridLayout(网格布局管理器)。规则的矩阵。
----CardLayout(卡片布局管理器)。选项卡。
---- CardBagLayout(网格包布局管理器),非规则的矩阵。
事件监听机制的组成;
--事件源(组件);
--事件(Event)。
--监听器(Listener)。
--事件处理(引发事件后的处理方式);
事件监听机制的特点;
1,事件源。
2,事件。
3,监听器。
4,事件处理。
事件源:就是awt包或者swing包中的那些图形界面组件。
事件:每一个事件都有自己特有的对应事件和共性事件。
监听器;将可以触发某一类事件的动作都已经封装到了监听器中。
创建图形化界面:
1, 创建frame窗体。
2, 对窗体进行基本设置,比如大小,位置,布局。
3, 定义组件。
4, 将组件通过窗体的add方法添加到窗体中。
5, 让窗体显示,通过setVisible(方法)。
代码示例:
import java.awt.*;
import java.awt.event.*;
class FrameDemo
{
//定义该图形中所需的组件的引用
private Frame f;
private Button but;
FrameDemo()
{
init();
}
public void init()
{
f=new Frame("my frame");
//对frame进行基本设置
f.setBounds(400,200,500,300);
f.setLayout(new FlowLayout());
but=new Button("关闭");
//讲组件添加到frame中
f.add(but);
//加载一下窗体上的事件
myEvent();
//显示窗体
f.setVisible(true);
}
private void myEvent()
{
f.addWindowListener(new WindowAdapter()
{
public void windowOpened(WindowEvent e)
{
System.out.println("我被打开了 ");
//System.exit(0);
}
public void windowClosing(WindowEvent e)
{
System.out.println("我被关闭了 ");
System.exit(0);
}
});
but.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.out.println("按钮被点击 ");
System.exit(0);
}
});
}
public static void main(String[] args)
{
FrameDemo fd=new FrameDemo();
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |