版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PART6.2Swing容器6.2Swing容器容器的主要作用是包容其他组件,并按定的方式组织排列它们。顶层容器是进行图形编程的基础,可以在其中放置若干中间容器或组件。在Swing中,有以下4种顶层容器:JWindow、JFrame、JDialog和JApplet。顶层容器中间容器中间容器专门放置其他组件,介于顶层容器和普通Swing组件中间的容器。常用的中间容器有JPanel、JOptionPane、JMemuBar、JToolBarJTabbedPane
等。6.2.1框架Frame是一个顶层容器,允许开发者将各种通用容器和组件添加到其中,并把它们组织起来,同时也为窗体勾勒出了边界。事实上,Swing还有另外两种顶层容器,JDialog和JApplet,分别用于构建对话框和Web页面。当程序在构造窗体的时候,必须首先创建JFrame实例,代码如下:6.2.1框架JFramemyFrame=newJFrame(Stringtitle);其中,参数title表示窗体的标题。JFrame的setSize(Dimensiond)方法用于设置以菱形对象定义的窗体大小,Dimension对象是一个矩形区域,如Dimensiond=newDimension(300,200);就是定义了一个长300像素,高200像素的矩形区域。JFrame常用的方法如下表6-1所示6.2.2面板JPanel是不带功能的通用容器,是一种无边框且不能移动、放大、缩小或者关闭的面板,其主要的功能为放置若干组件。面板除了背景外不会绘制任何内容,背景默认是透明的,可以使用setBackground()方法设置其背景颜色;也可以使setOpaque(false)方法将JPanel的背景设置为透明,这样其背景颜色就不会显示,而其下方的组件就可以显露。面板常用构造方法包括:6.2.2面板JPanel():创建具有流布局的新面板。JPanel(LayoutManagerlayout):创建具有指定布局管理器的新面板。JPanel类的常用方法如下:add(Componentcomp):添加组件到面板。setBorder(Borderborder):设置面板的边框。例6-3JPanel类面板的使用packageChapter6;importjavax.swing.*;publicclassexample6_3{ publicstaticvoidmain(String[]args){ JFrameframe=newJFrame("JPanel使用"); //声明和创建一个窗体Jframe JPanelpanel=newJPanel(); //声明并创建一个面板JPanel JButtonbutton=newJButton("面板上的按钮"); //声明并创建一个按钮JButton panel.setBorder(BorderFactory.createTitledBorder("面板的边界")); //设置面板的边界例6-3JPanel类面板的使用panel.add(button); //将按钮放在面板上
frame.add(panel); //将面板放在窗体上
frame.setSize(300,300); //设置窗体的尺寸
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置关闭窗口时的退出操作
frame.setVisible(true); //设置Jframe可见
}}JScrollPane是一个带有滚动条的通用容器,也是一种面板。如果某个窗格中的组件比较多,无法在容器的显示区域一次性显示出来,就可以使用带有滚动条的JScrollPane来装载这些组件,然后就可以通过滚动条来显示所有的组件。6.2.2面板JScrollPane只能容纳一个组件,如果需要将多个组件放入其中,可以先将这些组件放入一个JPanel对象,然后再将JPanel对象放入JScrollPane。注意JScrollPane常用的方法如下表6-2所示项目6主讲人:胡冰华Java图形用户界面设计6.1.2Swing介绍6.1.2Swing介绍AWT利用操作系统所提供的图形库创建图形界面,但不同操作系统的图形库所提供的功能并不完全一样,这就导致一些应用程序在测试时界面非常美观,而一旦移植到其他的操作系统平台上就可能变得“惨不忍睹”。6.1.2Swing介绍Swing是试图解决AWT缺点的,在AWT的基础上构建的一套新的图形界面系统,是JFC(JavaFoundationClass)的一部分。它提供了AWT所能够提供的所有功能,并且用纯粹的Java代码对AWT的功能进行了大幅度的扩充。所有的Swing组件实际上也是AWT的一部分,组件名称是在AWT类库中相同功能组件名称前加上字母J。例6-2.Java.swing类库简单案例packageChapter6;importjavax.swing.*;publicclassexample6_2{ publicstaticvoidmain(String[]args){ JFrameframe=newJFrame();//声明和创建一个窗体Jframe JButtonbutton=newJButton("aswingbutton"); //声明和创建一个按钮button
frame.add(button); //将按钮button添加到窗体Jframe上
frame.setSize(200,200); //设置Jframe的大小
frame.setVisible(true); //设置Jframe可见
}}综合上面两个案例,可以总结出,GUI界面设计分为以下几步:(1)创建项层容器窗体,作为放置其他组件的容器;(2)创建要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026贵州黔东南州黄平县生态移民公益性岗位人员招聘1人备考题库及完整答案详解(历年真题)
- 2026山东青岛城市轨道交通科技有限公司招聘7人备考题库带答案详解
- 2026湖南岳阳市云溪区“四海揽才”教师人才校园招聘13人备考题库附参考答案详解(巩固)
- 2026上半年四川事业单位统考涪城区考试招聘中小学教师32人备考题库含答案详解(完整版)
- 2026江苏南通市第一人民医院招聘备案制工作人员102人备考题库含答案详解(b卷)
- 2026广西上林国民村镇银行春季招聘备考题库(考点提分)附答案详解
- 2026甘肃天水秦安县云山中心卫生院招聘1人备考题库及1套参考答案详解
- 2026福建龙岩上杭县古田会议纪念馆公开招聘见习人员3人备考题库附参考答案详解(突破训练)
- 2026四川成都市龙泉驿区东山国际小学教师招聘12人备考题库附答案详解(模拟题)
- 2026中国电信校园招聘“优才计划”专项招聘备考题库及参考答案详解【满分必刷】
- 颜氏家训教学课件
- 中电建商业保理有限公司校园招聘考试题库附答案
- 执法用语课件
- 2026年湖州职业技术学院单招职业适应性测试题库及完整答案详解1套
- 2026年浙江纺织服装职业技术学院单招综合素质考试模拟测试卷附答案
- 商务英语面试技巧如何在英语面试中脱颖而出
- 小学奥数之圆与扇形求解【含答案】
- 提升组织效率
- 新能源建设课件
- “时空对话”朗诵剧剧本
- 湖北省-襄阳市区划代码
评论
0/150
提交评论