Java程序设计标准教程 ppt第9章.ppt_第1页
Java程序设计标准教程 ppt第9章.ppt_第2页
Java程序设计标准教程 ppt第9章.ppt_第3页
Java程序设计标准教程 ppt第9章.ppt_第4页
Java程序设计标准教程 ppt第9章.ppt_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、第9章布局管理器9.1布局管理器9.2 BorderLayout布局管理器9.3 FlowLayout布局管理器9.4 XYLayout布局管理器9.5 GridBagLayout布局管理器9.6 PaneLayout布局管理器9.7 CardLayout布局管理器9.8其他布局但是,如图9-1所示,此方法的缺点在于,如果从不同的分辨率: 1024768下降到640480,则可能会发生窗口画面超过显示区域的问题。 为了解决这些问题,Java以布局管理器作为布局的主机,使程序员无需为这些细节显示问题而烦恼。 布局管理器的功能包括设置校正容器的最佳大小和最小大小,以及适当定位容器中组件的大小和位置

2、。 当用户调整应用程序窗口的大小或分辨率时,组件的大小会自动调整,布局管理器在分辨率差异很大的环境中也会工作。 下面介绍一般的布局管理器。 门,门,图9-1,门,9.2 BorderLayout布局管理器,BorderLayout布局管理器,按方向将整个窗口分为South、North、West、East、Center个部分(一)制定项目; 选择File|New Project命令,打开项目向导对话框,将项目名称设置为border_demo,并将项目路径设置为D:/JbuilderX/border_demo 将项目标题设置为“BorderLayout布局”,其他设置使用默认值,然后单击“完成”按

3、钮生成新项目border_demo。 转到下一页,创建9.2 BorderLayout布局管理器(Java文件)。 选择File|New命令,打开窗口的General选项,双击其中的Application图标,将显示“应用向导”对话框,其中包含“类名称” 将设置为border_demo的frame类的标题(Title )设置为“BorderLayout布局实例”,然后单击此对话框中的Finish按钮。 将在项目border_demo中生成程序Frame1.java和border_demo.java在文件窗口中打开Frame1.java文件,然后选择“文件视图”选项中的“设计”选项要在“设计”窗

4、口右侧的属性栏中保留Layout属性的默认设置BorderLayout,请首先在“结构”视图中双击UI.this.contentPane。 添加下一页、上一页、门、9.2 BorderLayout布局管理器、(3)awt组件。 在组件中选择AWT组件,然后在设计窗口中依次添加5个Button组件。 此时的设计表单如图9-2所示。 (4)修改组件的布局属性。 从图9-2可以看出,被追加的5个按钮分别被放置在设计窗口的5个方向上。 这就是BorderLayout布局管理器的布局策略。 此时的构造图如图9-3所示。 下一页,上一页,门,图9-2,门,图9-3,门,9.2 BorderLayout布局

5、管理器,图9-3表示当前图形界面的结构,其中,UI是图形用户界面为了区分设计空间的不同部分,可以通过设置borderLayout1的属性来调整组件的布局样式,hgap和vgap的属性值都设置为20 (以像素为单位)。修改每个组件的属性:将button1的标签属性更改为“南”,将button2的标签属性更改为“北”,将button3的标签属性更改为“西”,将button4的标签属性更改为“东” 9.2 BorderLayout布局管理器,此时系统将根据用户的设置自动生成以下代码:公共类框1 extendsjframejpanelcontentpane; borderlayout borderla

6、yout1=新的borderlayout (); 按钮1=新按钮(); 按钮2=新按钮(); 按钮3=新按钮(); 按钮4=新按钮(); 按钮5=新按钮(); 转到下一页、上一页、门、9.2 BorderLayout布局管理器、privatevoidjbinit () throwsexceptioncontentpane=(jpanel ) this . 按钮1 .设置字体(new Java.awt.font (dialog,0,15 ) ) :按钮1 .设置标签(西); 内容面板设置布局(边框); this.setsize (新维度(400,300 ) ):this.settitle (边界

7、布局的实例) button2. set font (新Java.awt.font (诊断,0,15 ) 按钮3 .设置字体(new Java.awt.font (dialog,0,15 ) ) :按钮3 .设置字体(color.black ); 下一页,上一页,门,9.2 BorderLayout布局管理器,button3.setLabel (北) button4. set font (新Java.awt.font (dialog,0,15 ) ):button4. s 按钮5 .设置字体(new Java.awt.font (dialog,0,15 ) ) :按钮5 .设置字体(中); bo

8、rderLayout1.setHgap(20 ); borderlayout1.设置vgap (20 ); 内容面板添加(按钮1、边框. west ); 内容面板添加(button 2、BorderLayout.SOUTH ); 内容面板添加(第3节,第3节); 内容面板添加(按钮4、边框. east ); 内容面板添加(按钮5、边框中心);下一页、上一页、上一页、下一页、9.2 BorderLayout布局管理器、BorderLayout类中定义的方法很少,最常见的是设置显示间隔的setHgap(int hgap )和setvgap(int ) 代码完成后,运行程序border_demo.j

9、ava,执行结果如图9-4所示,图9-4清楚地显示了各组件之间的间隔。 BorderLayout布局最多只能放置在容器中5个组件。 顺序是南、北、西、东、中。 要重新定位组件,请用鼠标拖动组件。 门,上一页,图9-4,门,9.3 FlowLayout布局管理器,FlowLayout布局管理器是将所有组件从上到下依次添加的一般布局管理器类型,允许空间显示在中间的FlowLayout版面管理器的功能强于BorderLayout,不仅可以设置组件间距的setHgap(int hgap )和setVgap(int vgap )方法,还可以设置组件的对齐方式在本例中也添加了5个按钮,但布局方法完全不同。

10、 (一)制定项目; 选择File|New Project命令,打开“项目向导”对话框,将项目名称设置为flow_demo,将项目路径设置为D:/JbuilderX/flow_demo。 在“设置项目信息”对话框中,将项目标题设置为“流式布局”,其他设置使用默认值,单击“完成”按钮将生成新的项目flow_demo。 转到下一页,创建9.3 FlowLayout布局管理器(Java文件)。 选择“File|New”命令,打开窗口中的“General”选项,双击其中的“Application”图标,弹出“Application Wizard”对话框,然后单击“类名称” 将设置为flow_demo单击

11、Finish按钮,将在项目FlowLayoutDemo中生成Frame1.java和flow_demo.java程序。 (3)追加awt组件。 在“文件”窗口中打开Frame1.java文件,选择“文件视图”选项中的 Design 选项,然后转到文件的“设计”视图页面。 在设计窗口右侧的属性栏中,将Layout属性设置为FlowLayout。与上面的示例一样,打开组件栏中的AWT选项,并在“设计”窗口中依次添加五个Button组件。 此时的设计表单如图9-5所示。 修改下一页、上一页、门、图9-5、门、9.3 FlowLayout布局管理器、(4)布局样式属性。 在“结构”窗格中选择“当前布局

12、管理器”flowlayout1时,“设计”窗格的右侧将显示布局管理器属性列表。 这里,属性hgap和vgap分别表示邻接的部分间的间隔,属性alignment表示组件的排列方式,能够选择的排列方式有LEFT、CENTER和RIGHT这3种。 修改每个属性的值,将hgap属性值设为50,将vgap属性值设为50,将alignment属性设为LEFT,修改后的布局管理器将每个组件的水平间距设为50 (单位为像素),垂直间距设为50 (单位为像素) 此时,系统将根据用户的设置自动生成以下代码:下一页、上一页、门、9.3 FlowLayout布局管理器、public class frame1exten

13、dsjframejpanelcontentent borderlayout borderlayout1=新的borderlayout (); 按钮1=新按钮(); 按钮2=新按钮(); 按钮3=新按钮(); 按钮4=新按钮(); 按钮5=新按钮(); 下一页,上一页,门,9.3 FlowLayout布局管理器,privatevoidjbinit () throwsexceptioncontentpane=(jpanel ) this.ggs button1. setlabel (buttoon 内容面板设置布局(流式1 ); 新建维度(400,300 ):this.settitle (流式实例

14、):button2,setLabel(button2); 巴顿3,设置(巴顿3 ); 巴顿4,设置(巴顿4 ); 按钮5、设置(按钮5 ); 下一页,上一页,门,9.3 FlowLayout布局管理器,flowlayout1. set alignment (flowlayout.left ); flowLayout1.setHgap(50 ); flowlayout1.设置vgap (50 ); 内容面板添加(button 1,null ); 内容面板添加(button 2,null ); 内容面板.添加(按钮3,空); 内容面板添加(按钮4,空); 内容面板.添加(按钮5,空); 组件之间的间距越大,5个组件就越不能容纳在单行空间中,如图9-6所示,因此它们分成三行显示,行之间的间距为40,行中的所有组件都显示在中间。 上一页,下一页,图9-6,下一页,9.4 XYLayout布局管理器,XYLayout布局管理器是非常灵活的布局管理器,用户可以在创建组件后用鼠标移动组件的位置以下是XYLayout布

温馨提示

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

评论

0/150

提交评论