当前位置:文档之家› 第六章GUI图形用户界面自动保存

第六章GUI图形用户界面自动保存


基本组件
被放在容器中的某个位置,完成具体的与用户 交互的功能。使用组件的步骤为: 1. 创建某种基本组件的新对象,指定对象的属性,如外观,
大小等。 2. 将该组件对象加入到某个容器的合适位置。 3. 创建该组件对象的监听者,即实现以它为事件源的事件
监听接口。
标签(Label)和按钮(Button)
void addXXXListener(XXXListener l) 来依附于某个事件源。即事件源通过该方法来将自己注册 给监听器。下表列出了常用的事件监听器接口及其抽象方 法。
接口 ActionListener ItemListener WindowListener
ComponentListener
b), isEditable(), select(int start,int end), selectAll(),
setSelectionStart(int start),setSelectionEnd(int end), getSelectionStart(), getSelectionEnd(), getSelectedText() TextField: setEchoChar(char c), echoCharIsSet(), getEchoChar() TextArea: append(String s), insert(String s,int index) 产生事件:文本事件,动作事件(TextField)
Java 的事件处理
对于每类事件,都有一个接口,这个接口必须由想接收这 个事件的类的对象实现。
动作事件(ActionEvent)
ActionEvent类只包含一个事件
文本事件(TextEvent)
TextEvent类只包含一个事件
选择事件(ItemEvent)
ItemEvent类只包含一个事件
} public void mouseExited(MouseEvent me) { System.out.println("Mouse exited " + me); } public void mouseClicked(MouseEvent me) { System.out.println("Mouse clicked " + me); }
AdjustmentListener MouseMotionListener MouseListener
KeyListener FocusListener ContainerListener TextListener
包含的方法 ActionPerformed
ItemStateChanged
windowClosing,windowOpened,windowIconified,w indowDeiconified,windowClosed,windowActivated, windowDeactivated
容器
所有容器都是Container类的子类,主要作用是包容 其他组件并按一定方式组织排列它们,同一个容器所有 部件通常总是同时被显示和同时隐藏,它们可分为三组: Panel, Applet:无边框 ScrollPanel:可以自动处理滚动操作 Window,Frame,Dialog,FileDialog:大多都含有边框,并 可以移动、放大、缩小、关闭。
列表(List)
常用方法: getSelectedItem(), getSelectedItems() getSelectedIndex(), getSeledtedIndexs() select(int index), deselect(int index) add(String item), add(String item,int index) remove(String item),remove(int index) 产生事件:选择事件,动作事件
调整事件(AdjustmentEvent)
AdjustmentEvent类只包含一个事件 ADJUSTMENT_VALUE_CHANGED,即代表组件状态 发生连续变化的事件。能引发该事件的动作有: 操纵滚动条(Scrollbar)改变其滑块的位置; 操纵用户自定义的Scrollbar对象的子类组件改变其滑 块位置;
} public void mouseReleased(MouseEvent me) { System.out.println("Mouse released " + me);
} public void mouseEntered(MouseEvent me) { System.out.println("Mouse entered " + me);
常用方法:
Label:
setText(String s)
getText()
Button:
setLabel(String s)
getLabel() 产生事件:
Label:无 Button:动作事件
文本框(TextField)和文本域(TextArea)
常用方法: 两者共有:getText(), setText(String s), setEditable(boolean
{ // 构造函数 public MultipleEventTester() { addWindowListener(this); addMouseListener(this); addKeyListener(this); setSize(200,200); show(); }
// 鼠标事件处理方法 public void mousePressed(MouseEvent me) { System.out.println("Mouse pressed " + me);
滚动条(Scrollbar)
常用方法 setUnitIncrement(int u) setBlockIncrement(int b) getUnitIncrement() getBlockIncrement() getValue()
产生事件:调整事件
画布(Canvas )
画布是一个用来画图的矩形背景构件,具有自己的坐标 系统,使用布局管理器可以确定它在其它构件的位置, 并且可以用布局管理器来进行版面布局。Canvas 扩展了 Component,继承了它的paint(Graphics g)、 update(Graphics g)、以及repaint()方法。当Canvas需要 更新时,自动调用repaint方法。repaint方法也可以直接 在绘图程序中调用。在repaint 中调用了paint方法,paint 方法也可以被绘图代码覆盖。
AWT包括标准的图形用户界面(GUI)的要素,如:窗口、 对话框、构件、事件处理、版面设计管理及接口和例外处 理等 。
事件处理
具有图形用户接口的程序必须解决的一个问题是用 户的输入并不是顺序的。一个非GUI程序执行时,它会显 示一个提示,然后等待用户输入。而一个图形用户接口的 程序可包含按钮、菜单、文本输入区等。用户可以在任何 时间选择任何一种输入形式,或激活程序,或放大缩小窗 口,或使其它窗口成为当前窗口。由于不知道用户选择那 种输入,所以程序必须对事件采取相应的响应方法。
常用方法: getSelectedCheckbox() setSelectedCheckbox(Checkbox i)
产生事件:选择事件
下拉列表(Choice)
常用方法: getSelectedIndex(),getSelectedItem() select(int index), select(String item) add(String item), insert(String item,int index) remove(int index), remove(String item) removeAll() 产生事件:选择事件
TextValueChanged
import java.awt.*; import java.awt.event.*; public class MultipleEventTester extends Frame
implements WindowListener , MouseListener , KeyListener
组件事件(ComponentEvent)
ComponentEvent类包含有四个事件
焦点事件(FocusEvent)
FocusEvent类包含两个事件
事件监听器(Event Listeners)
事件是由事件监听者来处理的。Java 提供了响应特 定事件的抽象“事件监听器”,它在java.awt.event包中 被定义为接口,每个事件监听器可以通过调用
复选按钮(Checkbox)
常用方法: getState() setState(boolean b)
产生事件:选择事件
单选按钮组(CheckboxGroup)
创建例: style = new CheckboxGroup(); p=new checkbox(“plain”,true,style); b=new checkbox(“black”,false,style); i=new checkbox(“italic”,false,style);
第六章 GUI图形用户界面
LOGO
2019/7/26
教学目标
了解AWT技术与Swing技术 掌握Panel和布局管理器; 掌握事件触发原理,监听器,事件类; 掌握Button、Label、TextFiel、TextAread、Font; 掌握Checkbox、CheckboxGroup、Choice、List 掌握MenuBar、Menu、MenuItem、Scrollbar、Color; 掌握Dialog、PopupMenu; 掌握Swing技术界面设计初级控件; 掌握Swing技术界面设计中级控件; 掌握Swing技术界面设计高级控件;
相关主题