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

上传人:创****公 文档编号:1607292 上传时间:2019-10-19 格式:PPT 页数:22 大小:300KB
返回 下载 相关 举报
Java面向对象程序设计课件要求.ppt_第1页
第1页 / 共22页
Java面向对象程序设计课件要求.ppt_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《Java面向对象程序设计课件要求.ppt》由会员分享,可在线阅读,更多相关《Java面向对象程序设计课件要求.ppt(22页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

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

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

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

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

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

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

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

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

9、在javax.swing包中定义,按功能分类有下面几种。,1顶层容器组件(Top-Level Containers) JFrame,JDialog,JApplet,JSplitPane,JTabbedPane,JToolbar2特殊用途容器组件(Special-Purpose Containers) JInteralFrame,JLayeredFrame,JRootPane3基本组件(Basic Controls) JButton,JComboBox,JList,JMenu,JSlider,JTextField,JTextArea4信息显示组件(Uneditable Information D

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

11、引用例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数组表示是二维数组的列名称。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > pptx模板 > 校园应用

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com