




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、0,容器组件(Container),1,本节学习目标:,了解 AWT中容器的概念 掌握Frame、Panel、Window和Dialog四种容器的使用方法。 掌握 Frame、Window和Dialog三种容器的不同点。,2,什么是容器?,容器组件的主要作用是包容其他组件,并按照一定的方式组织排列他们。同一个容器中的所有组件通常总是同时被显示或同时被隐藏。 容器分为顶层容器和中间层容器,顶层容器,顶层容器是用来承载其它容器和基本组件的。有JFrame、JApplet、JDialog和Jwindow。 在Java GUI应用程序设计中,要以一个顶层容器作为程序的窗口来容纳其他的GUI组件。,3,
2、中间层容器,有些Swing组件是专门用来盛装别的组件用的,这些只作为容纳别的组件的容器,是介于顶层容器与一般Swing组件之间的,所以叫中间层容器。中间层容器有JMenuBar、JOptionPane、JRootPane、JLayeredPane、JPanel、JInternalFrame、JScrollPane、JSplitPane、JTabbedPane、JToolBar 、JDeskTopPane、JViewPort、JEditorPane、JTextPane。,4,所有容器组件都是Container类的子类。在Container类中定义了容器所需要用到的属性及方法。 常用的方法有: a
3、dd (Component omp), setLayout(LayoutManager mgr)等。,5,6,JAVA中的常用容器组件:,1 面板(JPanel) 2 框架(JFrame) 3 对话框(JDialog ) 4 窗口(JWindow) 5 滚动窗格(JScrollpane),7,一、 面板(Panel),Panel是一种最简单的容器类,它提供空间将其它的组件附在其上。 可以在一个Panel上放入其它Panel。 一个Frame里面可放入好几个Panel。Panel的好处就是可将相关的组件整合组织起来,让用户接口更为简洁清楚。,8,Panel面板程序举例:,见例题Mousevent
4、1.java,9,二、框架(Frame),Window类提供了用于窗口操作的基本功能。通常,用户使用Window类的子类Frame类和Dialog类。 Frame类使用户可以创建带有菜单条的全功能窗口;Dialog类用于创建对话框。 用户可以用下列构造方法创建框架: (1)new Frame(): 创建一个不带标题的框架 (2)new Frame(String): 创建一个带有指定标题的框架。 框架是容器,就像面板一样,用户可以用add()方法将其他组件加到该框架容器中。该容器的缺省布局是BorderLayout.,10,三、对话框(Dialog ),对话框用于短暂的窗口。如:提示警告或向用户
5、询问特定信息的窗口等。 对话框没有标题条和菜单。用户可以决定对话框的尺寸是否能被改变。 对话框分为有模式和无模式两种:有模式对话框在弹出后其它所有的窗口都被它屏蔽掉,用户只有对它响应之后才能进行其它的操作。无模式对话框在弹出后,用户可以不理会它而转到别的界面去操作。 AWT提供了两种对话框:Dialog类生成普通对话框;FileDialog类生成依赖于平台的,用于选择存储或打开文件的对话框。,11,Dialog(Frame) : 该方法创建依赖于Frame的无模式对话框. Dialog(Frame, boolean):该方法创建依赖于Frame的对话框,布尔值为真时为有模式对话框。 Dialo
6、g(Frame, String):该方法创建依赖于Frame的无模式对话框,并给定对话框的标题。 Dialog(Frame, String, Boolean):该方法创建依赖于Frame的对话框,指出是否模式为对话框,并给定对话框的标题 。,1、Dialog类,12,先创建一个Frame: Frame F =new Frame(TEST); F.setSize(400,400); F.setVisible(true); 创建一个属于特定Frame的对话框: Dialog d=new Dialog(F,TEst,true); d.setSize(200,200); d.setVisible(tr
7、ue); d.setLocation(200,300);,Dialog的应用举例:,13,(1)FileDialog(Frame, String):创建一个打开文件的对话框,此文件对话框附属于给定的框架,具有给定的标题。,(2)FileDialog(Frame, String, int):同上面的方法类似。整型参数用来决定此文件对话框是用来打开文件还是保存文件,可选择的类型参数为FileDialog.LOAD和FileDialog.SAVE。,注意:在创建对话框实例之后,用户必须用setVisible()方法将其显示出来: FileDialog fd=new FileDialog(frm, F
8、ileDialog); fd.setVisible();,2、FileDialog类,14,四、窗口(Window),(1)Window类所有有边框容器的父类。它的边框是不可见的。,(2)Window窗口必须由一个Frame创建,并且依附于这个Frame而存在。,(3)Window类的构造函数:public Window(Framefrm); Frame f=new Frame(window test); Window w=new Window(f); w.add(new Label(this is a window); w.setSize(100,100); w.setBackground(
9、Color.green); w.setLocation(200,300); w.setVisible(true); w.pack();,15,五、滚动窗格(Scrollpane),(1) Scrollpane 是一种带有滚动条的无边框容器。,(2)当Scrollpane容器容纳的组件比窗格大时,则可以通过滚动条查看整个内容。,(3)构造函数: public Scrollpane ();/在需要时显示滚动条 public Scrollpane (intscrollbarDisplayPolicy ); scrollbarDisplayPolicy 可以取以下三个值: SCROLLBARS_ALW
10、AYS,SCROLLBARS_NEEDED, SCROLLBARS_NEVER,16,程序举例:,public static void main(String args) Frame f=new Frame(scrollpanel test); ScrollPane sp=new ScrollPane(ScrollPane.SCROLLBARS_ALWAYS); sp.add(new Label(I am a Label in the ScrollPane); f.add(sp); f.setSize(400,400); f.setVisible(true); ,注意:TextArea组件产生
11、的是一个可以编辑的区域,而ScrollPane只是一个带有滚动条的容器。,17,Window、 Frame、Dialog三种容器的总结:,(1)就层级结构来看,Window是Frame及Dialog的超类。也就是说Frame及Dialog也是一种Window。 (2)Window没有边框、没有标题、没有菜单,也不能缩放大小,而且必须以一个frame或dialog作其拥有者。Window最适合用来展示需要浮在其它组件之上的无边矩形区域。 (3)Frame有边,可设标题,上面也可放菜单,且可调整大小(最大和最小化)。Frame最合适用于需要有菜单的窗口。 (4)Dialog有边,可设标题,也可调整
12、大小,很像Frame。但与Frame不同的是它不能放菜单。 (5) Window和Dialog要依附于一个Frame而存在。,18,Window、 Frame、Dialog的实例:,19,网上的一个问题:,setContentPane()经常出现在应用程序里面,但是具体是干什么工作的我不知道 现在又看到了getContentPane().add()那么getContentPane()又是干什么工作的呢? 我还想知道,从哪里能找到有关所有java的类、方法等这些东西的功能解释的资料呢?(jdk的文档有各种类和方法的功能解释 ) 请指教,20,Swing中的 getContentPane()方法,
13、在过去的J2SE版本中,部件(components)不能直接添加到最高级(top level)的Swing容器,这些容器包括:JFrame, JDialog, JWindow, JApplet和JInternalFrame. 以往需要调用JFrame的getContentPane()方法。 aFrame.getContentPane().add(aComponent),21,Swing中的 getContentPane()方法,在J2SE5.0中,可以直接添加部件到最高级的Swing容器,也可以直接在容器内设置布局管理和删除部件。这个变化允许我们可以省去调用getContentPane()而直
14、接在容器内应用add(),setLayout()和remove()。,22,Swing中的 getContentPane()方法,getContentPane() 是接口 RootPaneContainer的一个方法,JDialog、JFrame、JWindow、JApplet、JInternalFrame实现了接口 RootPaneContainer 定义如下: public Container getContentPane() return getRootPane().getContentPane(); 它返回的是一个Container 也就是说,是JDialog、JFrame、JWindow、JApplet、JInternalFrame
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国智慧高速公路行业市场发展现状及前景趋势与投资分析研究报告(2024-2030)
- 健康知识普及课件
- 健康的生活-生物课件
- 2024年标签贴纸项目项目投资申请报告代可行性研究报告
- 营销全业务管控管理办法
- 蚌埠市数据共享管理办法
- 街道办事处考勤管理办法
- 西藏大学勤工俭学管理办法
- 装修与机电配合管理办法
- 西咸新区自行车管理办法
- 《农民工参与民族地区新农村建设的模式研究》
- 《仓储基本知识》课件
- 不动产登记知识课件
- 建筑工程钢结构部分施工质量验收资料
- 2024年新高一英语初升高衔接《语法名词短语、形容词短语、副词短语》含答案解析
- 曲臂车高空作业车施工方案1
- 3外架专项施工方案
- 七年级语文上册语文必背【古诗词与文言文】
- 电梯日管控、周排查、月调度内容表格
- 体育赛事组织策划及执行方案手册
- 全过程造价咨询项目保密及廉政执业措施
评论
0/150
提交评论