已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第14章 使用Swing基本组件,要想创建漂亮而功能丰富的应用程序,首先要了解并掌握如何使用Swing包中提供的各种界面组件。本章将认识一个很重要的类JComponent类,学习并掌握Swing工具包中提供的基本控件和信息显示控件。,14.1 认识JComponent类,除了顶层容器以外,所有以“J”开头的Swing组件直接或间接地继承自JComponent类。例如,JPanel、JScrollPane、JButton和JTable都继承自JComponent。但是JFrame和JDialog、JApplet不是继承自JComponent,因为它们是作为顶层容器实现的。所以了解JComponent类有助于理解大部分Swing组件所具有的方法和属性。,14.1.1 JComponent特性,JComponent类继承自Container类,而Container类又继承自Component类。Component类包括从提供布局线索到支持绘制和事件的每一件事。Container类支持添加组件到容器并对它们进行布局。本节的API列表总结了Component和Container,也是JComponent最经常使用的方法。,14.1.2 Jcomponent API,JComponent类从Component和Container继承了许多方法,并提供了许多新的方法。下面的表中总结了最经常使用的方法:,14.2 基本控件,Swing的基本控件主要是用于接受用户输入的简单组件。基本控件也可以用于显示简单的状态。基本控件包括:按钮组件Jbutton、复选框组件JCheckBox、下拉列表组件JComboBox、列表框组件JList、菜单组件JMenu、单选按钮组件JRadioButton、滑块组件JSlider、微调控制组件JSpinner、文本框组件JTextFeld和密码框组件JPasswordField。,14.2.1 按钮组件JButton,在Swing中,有很多种按钮,如普通按钮、复选框、单选按钮等,它们都是AbstractButton类的子孙类。所以要创建一个按钮,可以实例化这些类的对象。 1构造器 2设置按钮上文本与图标的相对位置 3指定键盘助记符 4设置工具提示 5启用(或禁用)按钮 6设置默认按钮,14.2.2 复选框组件JCheckBox,JCheckBox类提供了对复选框按钮的支持。还可以使用JCheckBoxMenuItem类将复选框放入菜单。因为JCheckBox和JCheckBoxMenuItem继承自AbstractButton,所以Swing复选框具有所有一般按钮的特性。,14.2.3 单选按钮组件JRadioButton,单选按钮是一组在同一时刻只有一个按钮可以被选中的按钮。Swing中支持单选按钮的是JRadioButton和ButtonGroup类。因为JRadioButton继承自AbstractButton,所以单选按钮具有所有按钮的特性。,14.2.4 文本框组件JTextField,Swing中支持文本框组件的是JTextField类,用来接受用户输入的单行文本信息。如果需要为文本框设置默认文本,可以通过构造器JTextField(String text)创建文本框对象。,14.2.5 密码框组件JPasswordField,Swing中支持密码框组件的是JPasswordField类,它是JTextField的子类,为密码输入提供特殊的文本字符。出于安全的原因,密码框不能显示出用户输入的字符,要显示与用户输入不同的字符,例如一个星号*。作为另外一种安全措施,密码框将它的值存储为一个字符数组,而不是字符串。当用户结束输入密码并单击时,如按下回车键,密码框响应一个动作事件。,14.2.6 组合框组件JComboBox,JComboBox组件可以让用户在多个选择项中选择其中一个,它有两种形式:不可编辑的和可编辑的。默认的形式是不可编辑的组合框,它的特征是拥有一个按钮和一个选择值的下拉列表。第二种形式,称为可编辑的组合框,它的特征是拥有一个文本框紧挨着一个小的按钮,用户可以在文本框中输入一个值或单击按钮显示下拉列表。 1不可编辑组合框 2可编辑组合框,14.2.7 滑块组件JSlider,Jslider是一个让用户以图形方式在有界区间内通过移动滑块来选择值的组件。滑块可以显示主刻度标记和次刻度标记。如果空间有限,可选择使用JSpinner来代替。,14.2.8 微调控制组件JSpinner,JSpinner是一个复合组件,由三个小组件组成:两个小按钮和一个编辑器。编辑器可以是任何JComponent,但是默认的是包含一个格式化文本框的面板。JSpinner所有可能的值和当前的值由它的model(MVC中的模型)来管理。要创建一个微调选择器,首先要创建它的模型,然后将模型传递给JSpinner构造器。,14.2.9 菜单组件JMenu,菜单提供了另外一种节约空间的方式,让用户在多个选择项中选择一项。按惯例,菜单是唯一的,它们不与其他UI中的组件放在一起。菜单通常出现在菜单栏上,或者作为一个弹出菜单。一个菜单栏包含一个或多个菜单,一般出现在窗口的顶部。弹出菜单是一个不可见的菜单,直到用户在能弹出的组件上做出相应平台的鼠标动作,如单击右键,然后弹出菜单出现在鼠标下面。 1菜单组件的继承层次 2创建菜单,14.2.10 列表框组件JList,JList组件有许多项供用户选择,这些选择项显示为一列或多列。通常将JList组件放在一个滚动面板中,当其中的选择项超过一定数量时,可以滚动查看。 1创建一个Model 2初始化列表 3在一个列表中选择列表项 4向列表中添加列表项和从列表中删除列表项,14.3 不可编辑的信息显示控件,Swing的不可编辑的信息显示控件只用于给用户提供信息,不能编辑。这些组件包括:标签组件JLabel、进度条组件JProgressBar、分隔线组件JSeparator和工具提示组件JtoolTip。下面逐一对这些组件做一介绍。,14.3.1 标签组件JLabel,在Swing中,最经常用来显示信息的就是标签JLabel。使用JLabel类,可以显示不能选择和修改的文本和图像。如果需要创建一个组件用来显示字符串或图像或两者都有,可以使用JLabel或JLabel的派生类。,14.3.2 进度条组件JProgressBar,有时,在一个程序中运行的任务可能会持续一些时间才能完成。用户友好的程序应该对用户一些提示,以说明任务可能需要多长时间,当前已经完成了多少等等。一种方式是使用动画图像来说明,另外一种方式是设置等待状态鼠标(使用Cursor类和组件的setCursor()方法)。 1使用确定进度条 2使用不确定进度条,14.3.3 分隔线组件JSeparator,JSeparator类提供水平或垂直方向上的分隔线或空的区域,在菜单和工具栏中最经常使用的。实际上,甚至在不知道有JSeparator类存在的情况下都可以使用分隔线,因为菜单和工具栏提供有很方便的方法来创建和添加分隔线。,14.3.4 工具提示组件JToolTip,在Swing中,很容易就能为任何JCompone
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 厂家进驻协议合同范本
- 厂区工厂合租合同范本
- 合伙办公司签合同范本
- 制冷机组转让合同范本
- 古玩收购出售合同范本
- 卡抵货款合同协议范本
- 古玩网络买卖合同范本
- 代持股合同解除协议书
- 前程照明借款合同范本
- 动车出租租赁合同范本
- 湖北中医药大学辅导员考试题库
- 个人车位租赁合同电子版下载
- 麻醉科工作制度汇编
- GB/T 10000-1988中国成年人人体尺寸
- GA/T 452.1-2021居民身份证打印技术规范第1部分:打印质量要求
- 纪委书记政治画像
- 雅思词汇一本全(打印珍藏版)
- 2023统编版高中历史必修中外历史纲要上重点知识点归纳总结(复习必背)
- 高速磁浮大跨度桥梁设计关键技术介绍
- 子宫颈癌课件最新版
- 【教学课件】沪科版数学9上:22.1 第3课时比例的性质和黄金分割参考教学课件
评论
0/150
提交评论