版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电子与信息工程学院 戴喆第第六六章用户图形界面章用户图形界面主要内容AWT组件 及其属性事件处理Swing组件及事件图形图像重点难点6.1 AWT组件及其属性类n图形用户界面(Graphical User Interface, GUI)提供用户和程序之间数据交互的界面构成图形用户界面的基本元素是组件,而应用程序的运行是事件驱动的在Java语言中提供了专门的类库来生成各种标准图形界面元素和处理图形界面的各种事件,以实现图形用户界面的设计nJava常用图形用户界面工具 Java开发GUI界面的基本工具 由java.awt包提供,java.awt包的一部分 是重型(heavyweight)组件 运行
2、时需要与平台相关的本地组件为之服务6.1 AWT组件及其属性类SwingAWT(Abstract Window Toolkit)抽象窗口工具包SWTnJava常用图形用户界面工具6.1 AWT组件及其属性类 Swing能够创建与平台无关的组件 它对AWT中的组件进行了功能上的扩充 提供了一些新的组件 Swing组件由Javax.swing包提供AWT(Abstract Window Toolkit)抽象窗口工具包SwingSWTnJava常用图形用户界面工具6.1 AWT组件及其属性类AWT(Abstract Window Toolkit)抽象窗口工具包 IBM为它的Eclipse开发的图形用
3、户界面工具 SWT可以在Eclipse环境外使用 提供对操作系统本地图形用户界面的直接访问SwingSWT6.1 AWT组件及其属性类6.1.1 AWT组件 nAWT主要类关系ComponentCanvasScrollbarContainerButtonCheckboxTextComponentLabelTextAreaWindowPanelFrameAppletDialog是java.applet中的类BorderLayout等布局管理器TextFieldFontColorPointGraphicsGraphics2DImageBufferImageObjectn组件组件类(Componen
4、t)的子类或者间接子类创建的对象称为组件运行时可见,能拥有并管理其他组件,在窗口中可操纵,可获得输入焦点等组件类是抽象类,规定了所有组件应包含的通用方法,如设置组件位置、大小、字体、显示、隐藏、响应鼠标或键盘事件等操作6.1.1 AWT组件 n容器容器类(Container)的子类或者间接子类创建的对象称为容器容器对象能容纳其他组件对象,容器内的组件排列方式由容器的布局管理器控制容器类是组件类的子类6.1.1 AWT组件 n窗口和面板6.1.1 AWT组件 窗口(Window) 有标题栏、关闭按钮、边框、可添加菜单 可独立存在 运行时可移动、改变大小 顶层容器,不能包含在其他容器中面板(Pan
5、el) 没有标题、边框、不可添加菜单 不能独立存在 必须包含在其他容器中,面板中可包含面板n框架和对话框框架(Frame)和对话框(Dialog)都是窗口类的子类框架有最大化和最小化按钮,通常作为Java Application的主窗口对话框可分为有模式:总在最前,不关闭不能操作其他窗口无模式:反之6.1.1 AWT组件 常用组件标签Label文本行TextField按钮Button菜单菜单条MenuBar菜单Menu菜单项MenuItem6.1.1 AWT组件 6.1.1 AWT组件 n登录窗口实例LoginFrame.javan菜单和对话框Mwindow.java6.1.2 布局管理n布局
6、管理器Java采用布局管理器对容器中的组件进行相对布局当容器大小改变时,或者改变组件的大小或者改变组件间相对位置,保证组件不会被遮住且容器没有空白LayoutTest.java6.1.2 布局管理 按行布置组件,从左至右 容器大小变化时,容器的行宽随变,组件大小不变,组件的相对位置改变 Panel类的默认布局 将容器分为东、南、西、北四条边和中间,组件占满一条边或中间 容器大小变化时,四边组件不变,中间中间长宽随变 同一区域内,后放组件将覆盖先放组件 Window类的默认布局 将容器分为大小相等的网格,组件从左至右,从上至下依次占满一个网格 组件大小随容器大小而变 若组件数多于网格数,将保持行
7、数同时自动增加网格数FlowLayoutBorderLayoutGridLayout6.2 事件处理6.2.1 委托事件模型n基本概念事件用户对组件的操作,形成一个事件事件类可对事件进行分类,分别用类表示事件对象事件发生时,系统自动创建一个对象,表示发生的事件事件源发生事件的组件,就是事件源6.2.1 委托事件模型n事件监视器包含事件处理方法的一个类对象这个类中的每一个方法代表一种事件处理动作。这些方法通常在给定的接口中说明一个监视器可以监视多个事件源;一个事件源也可以注册多个监视器n事件处理器负责处理事件的方法以方法的参数的形式指定它所要处理的事件6.2.1 委托事件模型n事件处理机制当用户
8、的操作到达某个组件时,即发生某种事件,该组件成为;发生事件后,系统会产生一个,代表发生的具体事件,同时注册在事件源上的会得到通知,调用相应的完成事件的具体处理,即产生事件的效果,而调用事件处理器时需要将以形式传递给事件处理器,以便在处理时获得事件的详细信息6.2.2 事件处理方法n事件分类按照事件源,将事件分类:鼠标事件(MouseEvent):鼠标落下、移动等;窗口事件(WindowEvent):窗口关闭、最小化等;动作事件(ActionEvent):用户的一个动作导致了某个组件本身最基本的作用发生时。如:按下按钮的动作导致按钮的最基本作用发生,这个按钮被按下的事件就是动作事件6.2.2 事
9、件处理方法n事件类及事件对象Java为每类事件定义了事件类,当对应的事件发生时,系统自动创建事件对象常见事件类有WindowEventActionEventMouseEvent6.2.2 事件处理方法n事件监听器接口Java为每个事件类定义了对应的事件监听器接口,其中规定了针对这类事件可采取的处理方法常见事件监听器接口有WindowListenerActionListenerMouseListener6.2.2 事件处理方法n事件处理器即事件监听器接口规定的针对这类事件的处理方法常见事件处理器有windowPerformedactionPerformed mousePerformed事件鼠标事
10、件窗口事件动作事件事件类MouseEventWindwoEventActionEvent监听器接口MouseListenerWindwoListenerActionListener事件处理器mousePerformedwindowPerformedactionPerformed6.2.2 事件处理方法6.2.2 事件处理方法n事件处理过程为事件源注册事件监听器实现事件监听器接口实现 事件处理器 通过调用事件源的方法为其注册事件监听器 不同类型的事件,使用不同的方法注册,如 addActionListener(ActionListener l)/对动作事件 addWindowListener(W
11、indowListener l)/ 对窗口事件 addMouseListener(MouseListener l)/对鼠标事件 参数用于指定事件监听器对象6.2.2 事件处理方法n事件处理过程为事件源注册事件监听器实现事件监听器接口实现 事件处理器 在需要事件处理的组件类声明时实现事件监听器接口 进而在类体中给出事件监听器接口规定的事件处理方法6.2.2 事件处理方法n事件处理过程为事件源注册事件监听器实现事件监听器接口实现 事件处理器 实现事件监听器接口规定的方法6.2.2 事件处理方法n事件处理实例ActionEvent实例ActionEventTest1.javaActionEventT
12、est2.javaActionEventTest3.javaMwindow.javaWindowEvent实例Mwindow.javaMouseEvent实例MouseEventTest.java6.3 Swing组件及事件nSwing组件窗口组件JFrameJDialog文本显示和编辑组件JLabelJTextFieldJPasswordFieldJTextArea按钮组件JButtonJCheckboxJRadioButtonnSwing组件6.3 Swing组件及事件列表框和组合框组件JListJComboBox工具栏JToolBar菜单组件窗口菜单 菜单条 JMenuBar 菜单 JMenu 菜单项 JMenuItem快捷菜单 JPopupMenu6.3 Swing组件及事件nSwing实例输入用户信息UserJFrame.java文本编辑器EditorJFrame.java树形菜单JTreeTest.java6.4 图形图像n图形设计绘图类Graphics类用于在组件表面绘制图形、打印文字、显示图像等组件本身不提供这些操作,但可以通过组件对象的getGraphics()方法得到一个含有该组件外观信息的Graphics类对象组件绘图方法paint ()方法:组件类中即有的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新高考英语|完形填空专项指导 课件-2025届高考英语一轮复习之阅读理解专题
- 2024家庭装修施工合同终稿
- 2024教师高级职务聘任合同书新版(合同版本)
- 湖北大学知行学院《房地产市场营销》2021-2022学年第一学期期末试卷
- 呼伦贝尔学院《足球(二)》2021-2022学年第一学期期末试卷
- 呼伦贝尔学院《信息系统开发项目实训》2021-2022学年第一学期期末试卷
- 呼伦贝尔学院《城市地理学》2021-2022学年第一学期期末试卷
- 《大方略与新政评析》课件
- 典型社会组织-案例分析-北京红枫妇女心理咨询服务中心
- 员工培训与开发未来发展趋势
- DXI800分析仪性能保障措施
- 直线导轨的安装步骤公开课一等奖市优质课赛课获奖课件
- 广西职业技术学院教师招聘考试真题2022
- 铁路建设工程质量安全专项整治活动总结(完整版)
- UbuntuLinu操作系统上机实践实验题题库期末考试试卷24
- 邻菲罗啉安全技术说明书MSDS
- 部编版五年级道德与法治上册第三单元《我们的国土我们的家园-我们神圣的国土》第一课时
- GB/T 7284-2016框架木箱
- 脑与认知科学国家重点实验室开放课题申请书
- 国家自然科学基金申请经验汇总课件
- 电视画面编辑(本科)王晓红课件
评论
0/150
提交评论