------- android培训、java培训、期待与您交流! ---------
GUI
Graphical User Interface()图形用户接口
用图形的方式,来显示计算机操作的界面,
java为GUI提供的java.awt javax.Swing两个包
java.awt :
调用本地系统方法实现功能。
javax.Swing:
在AWT基础上,建立的图形界面系统,提供更多组件
AWT继承关系图:
布局管理器:
容器中组件的排放方式
常见的布局管理器:
1.FlowLayout流式布局
从左到右的排序。panel默认布局。
2.borderLayout边界布局
东南西北中。frame默认布局。
3.GridLayout网格布局
规则的矩形
4.CardLayout卡片布局
要让组件具备功能,就必须给组件添加监听器
监听机制:
1.事件源
2.事件
3.监听器
4.事件处理
事件源:就是awt包或者swing包中的图形界面组件
事件:每个事件源都有自己的特有的对应事件和共性事件。
监听器:将可以触发某一个事件的动作封装到了监听器中
常见的方法
public Component add(Component comp)
-
将指定组件追加到此容器的尾部。这是一个适用于
addImpl(java.awt.Component, java.lang.Object, int)
的便捷方法。
public void setSize(int width, int height)
-
调整组件的大小,使其宽度为
width
,高度为height
。
public void setLocation(int x, int y)
-
将组件移到新位置。通过此组件父级坐标空间中的
x
和y
参数来指定新位置的左上角。
public void setBounds(int x, int y, int width, int height)
-
移动组件并调整其大小。由
x
和y
指定左上角的新位置,由width
和height
指定新的大小。
public void setVisible(boolean b)
根据参数 b
的值显示或隐藏此组件。
package GUI;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
/**
* @param args
*/
public class FrameDemo {
//定义该图形中所需的组件的引用
private Frame f;
private Button but;
FrameDemo() {
init();
}
public void init(){
//新建一个Frame
f = new Frame("new frame");
//设置f的位置
f.setBounds(300,100,600,500);
//设置布局
f.setLayout(new FlowLayout());
//新建按钮
but = new Button("new button");
//把按钮添加到frame上
f.add(but);
//实现按钮的功能
myEvent();
//让frame显示
f.setVisible(true);
}
private void myEvent(){
//给frame设置监听器
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
//让按钮具备退出功能
but.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(0);
}
});
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new FrameDemo();
}
}
------- android培训、java培训、期待与您交流! ---------