ImageVerifierCode 换一换
格式:PPT , 页数:22 ,大小:300KB ,
资源ID:4612283      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-4612283.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java面向对象程序设计课件要求.ppt)为本站会员(杨桃文库)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

Java面向对象程序设计课件要求.ppt

1、1/,第17讲 图形用户界面,教学目标,掌握AWT高级组件 掌握利用AWT绘图,滚动条Scrollbar,滚动条(Scrollbar)是AWT中常用的组件,方便用户拖拽滚动条来设置数值或滚动画面。下表列出了类Scrollbar的构造方法与方法。,滚动条说明,滚动条的方向可以设置成水平或垂直,Scrollbar类分别用HORIZONTAL与VERTICAL两个常量来表示。 Java为滚动条提供了adjustmentEvent类进行事件处理,使用的是AdjustmentListener接口。接口提供了一个唯一的方法: void adjustmentValueChanged(adjustmentEv

2、ent e) adjustmentValueChanged()可接收adjustmentEvent类的对象,这个对象正是当滚动条滚动时触发adjustmentEvent而传递给监听器的。 例Ex9_25滚动条组件的使用,程序分析:当拖动滚动条时,AdjustmentEvent事件将被触发,adjustmentValueChanged()将执行。通过滚动条对象的getValue()方法取得滚动条的当前值,根据这个值设置标签字体的大小。,对话框Dialog,对话框(Dialog)是一种特殊的窗口,通常会利用它来处理一些简单的交互信息。Dialog与Frame类都是继承自Window类,它们均可放置

3、AWT的组件。下表列出了类Dialog的构造方法与方法。,对话框常用方法,例:Ex9_26对话框的使用,程序分析:运行程序,将得到一个窗口。当按下窗口的关闭按钮时,将弹出一个对话框,如图所示。按下对话框中的关闭按钮,窗口将关闭。当按下取消按钮时,将返回到初始状态。 程序中,可能会触发两个类的事件,一个是按下窗口关闭按钮所触发的WindowEvent事件,关于这个事件,程序中使用了由WindowAdapter类派生出来的内部类WinLis类对象来监听。另一个事件是对话框上的按钮按下时所触发的ActionEvent事件。因为Ex9_26类由ActionListener接口实现,所以第二个事件可以由

4、frm窗口对象来监听。,菜单的设计,一般的大型程序总是离不开菜单。在Java中,一个完整的菜单是由3个菜单栏类所创建,它们分别是菜单栏(MenuBar)、菜单(Menu)、菜单项(MenuItem)。其中,MenuBar和MenuItem都继承自MenuComponent类,Menu继承自MenuItem类。,菜单栏(MenuBar),菜单(Menu),菜单项(MenuItem),菜单项(MenuItem),创建菜单栏,创建一个菜单栏,首先必须创建一个MenuBar对象。通过调用窗口对象的setMenuBar()方法,将菜单栏加入到指定的窗口。再通过MenuBar对象的add()方法,将Men

5、u对象加入到菜单中,然后将MenuItem菜单项通过add()方法加入到各菜单中。由于Menu类是继承自MenuItem类的,所以也可以将一个Menu()对象通过add()方法加入到菜单中,这就形成了子菜单。 菜单栏的设计看起来很复杂,但是事件处理却很简单,它只会触发ActionEvent事件。具体的使用方法跟以前的按钮事件相同。 例:Ex9_27菜单栏设计示例,程序分析:同按钮事件的处理一样,通过getSource()方法获取事件源,根据事件源来设置窗口内Label对象的字体。程序看起来很长,实际上仔细分析并不困难,请读者自行分析程序。,AWT的绘图,AWT除了提供的基本组件来创建图形,还提

6、供了Graphics类供用户绘制图形。在一个窗口中,可以通过Graphics类提供的getGraphics()方法来获取绘图区域。取得绘图区域之后,就可以使用Graphics类提供的各种绘图方法来绘制图形了。 比如,想在窗口中绘制一个矩形,下面的语句就可以实现。Graphics g=getGraphics();g.drawRect(30,60,140,40); 第一条语句是取得窗口的绘图区,第二条语句是绘制长方形。 Graphics类提供了许多丰富的方法,同学们可以参考API熟悉这些方法。,例:Ex9_28 AWT绘图示例,程序分析:AWT提供了一个自发性 的paint()方法。paint()

7、方法在下 列情况发生时,会自动运行: 1当新建的窗口显示在显示器上, 或从隐藏变成显示时; 2从缩小图标还原之后; 3正在改变窗口的大小时。 paint()方法的格式是:public void paint(Graphics g) 可以将Graphics对象传给paint()方法,这样一来,编写在paint()里面的程序代码便可在绘图区内绘制图形了。上面的绘图代码就可以进行改装,将绘制矩形的代码放在paint()方法里面,程序通过调用paint()进行绘图。,Swing组件库,AWT设计的初衷是支持开发小应用程序的简单用户界面。但是,AWT缺少剪贴板、打印支持、键盘导航等特性,而且原来的AWT甚

8、至不包括弹出式菜单或滚动窗格等基本元素。此外,人们使AWT适应基于继承的、具有很大伸缩性的事件模型,基于同位体的体系结构就成为其致命的弱点。 Swing产生的主要原因就是AWT不能满足图形化用户界面发展的需要。,Swing概述,Swing组件几乎都是轻量组件 Swing是由100%纯Java实现的,Swing组件是用Java实现的轻量级( light-weight)组件,没有本地代码,不依赖操作系统的支持,这是它与AWT组件的最大区别。 Swing采用了一种MVC的设计范式,即“模型-视图-控制”(Model-View-Controller),其中模型用来保存内容,视图用来显示内容,控制器用来

9、控制用户输入。 Swing比AWT提供了更多的组件,这些组件都在javax.swing包中定义,按功能分类有下面几种。,1顶层容器组件(Top-Level Containers)JFrame,JDialog,JApplet,JSplitPane,JTabbedPane,JToolbar 2特殊用途容器组件(Special-Purpose Containers)JInteralFrame,JLayeredFrame,JRootPane 3基本组件(Basic Controls)JButton,JComboBox,JList,JMenu,JSlider,JTextField,JTextArea 4

10、信息显示组件(Uneditable Information Displays)JLabel,JProgressBar,JTooltip 5格式化信息输入组件(Editable Displays of Formatted Information) JColorChooser,JFileChooser,JTable,JTree,Swing概述,Swing基本组件的使用,向JFrame中添加组件的方法与AWT中向Frame中添加组件略有不同。JFrame中含JRootPane容器组件又内含contentPane容器组件,只能在contentPane容器中添加组件。通常,使用JFrame中的getCo

11、ntentPane()方法,获取对contentPane对象的引用 例Ex9_29 Swing基本组件的使用,从本例可以看出,Swing比AWT提供了更多的组件,而且每个组件的方法属性也比AWT中的组件丰富。,JTree类,树状组件(JTree)提供了庞大的API,是Swing中功能最大的一个组件。几乎可以在树状组件上做任何动作,但是操作起来也很复杂。幸好,Swing提供了一个缺省的树状组件处理模式。当你按下按钮之后,新的子树状组件便会加到目前所选取的节点上。 例:Ex9_30 JTree类的使用,程序运行结果如图所示。运行时,首先生成一个带滚动条的面板treeScroller,然后通过Swing提供的缺省的树状组件DefaultMutableTreeNode生成多个节点。,JTable类,和树状组件一样,表格(JTable)组件也非常的庞大。特别是程序通过JDBC访问数据时,常常会运用表格来显示界面。 例:Ex9_31 JTable类的使用,程序分析:程序中使用了构造方法JTable(Object rowData, Object columnNames)生成一个二维表格。其中,rowDate数组是用来显示的值,columnNames数组表示是二维数组的列名称。,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报