网站大量收购独家精品文档,联系QQ:2885784924

corejava day14串讲.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
corejava day14串讲

corejava day4串讲 田天(tiantian@) 2009.07.09. 一、GUI (一)图形开发 1、AWT Swing (1)Awt(java.awt.* ) 1)组成: ·组件:Component 和 MenuComponent 是根 ·容器:Container 存放其它组件的组件,也是组件的子类 ·布局管理器:LayoutManager 控制组件在容器中的位置和大小 eg. 计算器中的窗口就是容器,菜单是菜单组件,文本框是组件,按钮也是组件。 2)AWT的包结构: ·java.awt.Component(组件类) 常用的: Button(按钮) TestField(文本框--单行) TextArea(多行文本) Label(标签---显示文本) Panel(面板,不可独立的容器) Frame(窗口) Dialog(对话框) ·java.awt.MenuComponent(菜单组件) 常用的: MenuBar(菜单条) Menu(菜单) MenuItem(菜单项) 3)AWT的优点: ·AWT的速度比Swing较快,1.4时体现明显 ·Applet小应用程序。用这个做动态。不需要插件 ·AWT更接近于操作系统的显示效果 4)AWT的缺点: ·非纯JAVA,不能很好的跨平台 ·Applet很少应用 ·支持它的组件较少 (2)Swing 1)Swing的结构: Swing是AWT的增强版,5.0加大了Swing的能力。Swing是AWT的子类。 ·JTable (表格) ·JTree (树状结构) ·JComboBox (选项卡) 2)Swing的优点 ·纯JAVA ·跨平台 ·支持更多的功能 ·得到了很多公司的支持 3)Swing的缺点 ·不支持Applet,需要插件 ·消耗内存,速度慢 ·Bug多 ·与操作系统相比感观上不太好。 4)Swing与AWT的区别 ·Swing组件多,组件功能强,支持AWT的功能--事件 ·AWT学习用,Swing商用 ·AWT不是百分百跨平台的,Swing是纯java写的,百分百跨平台,是轻量级组件,不依赖于操作系统。 2、图形界面的应用分四步: (1) 选择一个容器: 1)window:带标题的容器(如Frame); 2)Panel:面板通过add()向容器中添加组件。 ·Panel 也是一种容器,但不能作为顶层容器。因为Panel不能独立存在,是要依附于窗口而存在的 ·Panel是不可见的。在设置容易的时候不要忘记设置它们的可见性。 注意: ·Frame是一个窗体,Dialog是对话框 ·Java 的图形界面依然是跨平台的。但是在调用了一个窗体之后只生成一个窗体,没 有事件的处理,关闭按钮并不工作。此时只能使用CTRL+C 终止程序。 (2)设置一个布局管理器 (3)向容器中添加组件 (4) 添加组件的事务处理。 3、五种布局管理器: (1)Flow Layout(流式布局): -- 按照组件添加到容器中的顺序,顺序排放组件位置。 1)默认为水平排列,如果越界那么会向下排列。 2)排列的位置随着容器大小的改变而改变。 3)Panel 默认的布局管理器为Flow Layout。 (2)BorderLayout(方位布局管理器) 1)会将容器非常五个区域:东西南北中。 2)后来的组件会挡住前面的组件。 3) 只允许水平扩展。 4)JFrame和Dialog 的默认布局管理器 eg. Button b1=new Botton(“north”);//botton 上的文字 f.add(b1,”North”);//表示b1 这个botton 放在north 位置 注:一个区域只能放置一个组件,如果想在一个区域放置多个组件就需要使用Panel 来装载。 (3)Grid Layout(网格布局管理器) -- 将容器生成等长等大的条列格,每个块中放置一个组件。 eg. f.setLayout GridLayout(5,2,10,10)//表示条列格为5 行2 类,后面为格间距。 (4)CardLayout(卡片布局管理器) -- 一个容器可以放置多个组件,但每次只有一个组件可见(组件重叠)。 1)使用first(),last(),next()可以决定哪个组件可见。 2)可以用于将一系列的面板有顺序地呈现给用户。 (5)GridBag Layout(复杂的网格布局管理器) -- 在Grid 中可指定一个组件占据多行多列,GridBag 的设置非常的烦琐。 eg. 添加滚动条:JScrollPane jsp = new JScrollP

文档评论(0)

ligennv1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档