GUI编程.ppt_第1页
GUI编程.ppt_第2页
GUI编程.ppt_第3页
GUI编程.ppt_第4页
GUI编程.ppt_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十三讲GUI编程 第十三讲GUI编程 学习目标 描述抽象窗口工具包 AWT 及其组件定义这些术语 容器 组件和布局管理器对FlowLayout BorderLayout和GridLayout三种布局管理器的使用正确使用Frame和Panel容器描述带有嵌套容器的复杂布局是如何工作的 第十三讲GUI编程 抽象窗口工具包 AWT 提供图形用户界面组件 这些组件可用于所有Javaapplet和应用程序包含可扩展的类和可继承的属性 这些类也可以是抽象类确保每个屏幕上显示的GUI组件都是抽象类Component或MenuComponent的一个子类有Component的一个抽象子类Container 它有两个子类 1 Panel2 Window 第十三讲GUI编程 java awt包 第十三讲GUI编程 容器 使用add 方法添加组件有两种主要类型的容器 window和Panel在显示屏上 Window是独立的浮动窗口Panel是GUI组件的一个容器 它必须包含在其他容器之中 如window和applet 第十三讲GUI编程 确定组件位置 容器中组件的位置和大小由布局管理器来确定如果禁用布局管理器 也可以控制组件的大小和位置 需要使用setLocation setSize 或setBounds 方法 使它们在容器中定位 第十三讲GUI编程 Frame 是Window的子类有标题和缩放角初始不可见 用setVisible true 方法使其可见默认布局管理器是BorderLayout使用setLayout方法可以改变默认布局管理器 第十三讲GUI编程 Panel 为组件提供空间允许子面板拥有它们自己的布局管理器 第十三讲GUI编程 容器布局 FlowLayoutBorderLayoutGridLayoutCardLayoutGridBagLayout 第十三讲GUI编程 FlowLayout管理器 Panel类的默认布局管理器组件添加按从左到右的顺序默认居中排列方式使用组件自己期望的大小使用构造器来调整大小 第十三讲GUI编程 BorderLayout管理器 Frame类的默认布局管理器组件添加到特定区域调整大小 1 North South和Center区域水平调整2 East West和Center区域垂直调整 第十三讲GUI编程 GridLayout管理器 组件按从左到右 从上到下的顺序添加所有区域大小相等其构建器指定行数和列数 第十三讲GUI编程 创建Panel和复杂的布局管理 布局管理器可以嵌套 第十三讲GUI编程 用AWT绘图 可以绘制任一Component 而AWT为此提供了Canvas类和Panel类 特别的是 可以创建Canvas或Panel的子类 覆盖paint方法每次组件显示都调用paint方法 例如 移开一个重叠组件上的窗口 每个组件都有一个Graphics对象Graphics类实现了许多的绘图方法 如drawLine等 第十三讲GUI编程 学习目标 定义事件和事件处理编写代码 处理GUI中发生的事件描述适配器类的概念 包括什么时候使用适配器类以及如何使用适配器类通过事件对象细节确定引发该事件的用户操作识别各种事件类型的接口为各种事件类型创建相应的事件处理器方法理解事件处理过程中内部类以及匿名类的使用识别AWT关键组件及其触发器的事件描述如何在JavaGUI中构造菜单条 菜单和菜单项理解如何改变组件的颜色和字体 第十三讲GUI编程 事件是什么 事件 描述发生情况的对象事件源 事件的发生器事件处理器 一个方法 该方法接受一个事件对象 对其进行解释并处理用户的交互操作 第十三讲GUI编程 Java2SDK事件模型 委托模型用户对象 处理器 使用它们想监听的GUI组件进行注册GUI组件只能触发已发生的事件类型的处理器大多数组件能够触发一个以上的事件在多个类间分布工作事件只发给已注册的监听器 每种事件都有一个相应的Listener接口 在实现Listener接口的类中定义可以接受事件对象 处理事件对象的各个方法 第十三讲GUI编程 第十三讲GUI编程 事件类型 第十三讲GUI编程 GUI组件行为 第十三讲GUI编程 importjava awt importjava awt event publicclassTwoListenerimplementsMouseMotionListener MouseListener privateFramef privateTextFieldtf publicTwoListener f newFrame Twolistenersexample tf newTextField 30 publicvoidlaunchFrame Labellabel newLabel Clickanddragthemouse f add label BorderLayout NORTH f add tf BorderLayout SOUTH f addMouseMotionListener this f addMouseListener this f setSize 300 200 f setVisible true publicvoidmouseDragged MouseEvente Strings Mousedragging X e getX Y e getY tf setText s publicvoidmouseEntered MouseEvente Strings Themouseentered tf setText s publicvoidmouseExited MouseEvente Strings Themousehasleftthebuilding tf setText s publicvoidmouseMoved MouseEvente publicvoidmousePressed MouseEvente publicvoidmouseClicked MouseEvente publicvoidmouseReleased MouseEvente publicstaticvoidmain Stringargs TwoListenertwo newTwoListener two launchFrame 第十三讲GUI编程 事件适配器 定义的监听器类能扩展适配器类并只覆盖需要的方法Example importjava awt importjava awt event publicclassMouseClickextendsMouseAdapter publicvoidmouseClicked MouseEvente 第十三讲GUI编程 用内部类处理事件 第十三讲GUI编程 用匿名内部类处理事件 第十三讲GUI编程 AWT组件 第十三讲GUI编程 AWT组件事件 第十三讲GUI编程 如何创建菜单 1 创建MenuBar对象 并加到菜单容器中 如Frame 2 创建一个或多个Menu对象 并加到菜单条对象中3 创建一个或多个MenuItem对象 并加到菜单对象

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论