版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第17章Java Swing 基础 17.1几个重要的类几个重要的类 17.2中间容器中间容器 17.3各种组件各种组件 javax.swing包为我们提供了更加丰富的、功能强 大的组件,称为swing组件,其中大部分组件是 轻量组件,没有同位体。swing组件的轻组件在 设计上和AWT完全不同,轻组件把与显示组件有 关的许多工作和处理组件事件的工作交给相应的 UI代表来完成,这些UI代表是用Java语言编写的 类,这些类被增加到java的运行环境中,因此组 件的外观不依赖平台,不仅在不同平台上的外观 是相同的,而且较重量组件而言有更高的性能 17.1几个重要的类几个重要的类 javax.sw
2、ing包中有四个最重要的类JApplet、 JFrame、JDialog、JComponent。 JComponent类的子类都是轻组件,而JFrame、 JApplet、JDialog都是重组件,即有同位体的组 件,这样窗口(JFrame)、对话框(JDialog)、小 应用程序(JApplet)可以和操作系统交互信息, 轻组件必须在这些重量容器中绘制自己。 JComponent 类是java.awt包中容器类Container 类的子类,因此所有的轻量组件也都是容器。 1 JComponent类类 JComponent类是所有轻量组件的父类(就象Component类是所有重 量组件的父类)
3、。 JComonent的几个代表子类: JLable负责创建标签 JMenu负责创建菜单对象 JMenuItem负责创建菜单项对象 JPanel负责创建面板对象 JPasswordField负责创建口令文本框对象 JPopupMenu负责创建弹出式菜单 JProgressBar负责创建进程条 JRadioButton负责创建单选按钮 JScrollBar负责创建滚动条 JScrollPane负责创建滚动窗格 JSlider负责创建滑动条 JSplitPane负责创建拆分窗格 JTable负责创建表格 2 JFrame类类 javax.swing包中的JFrame类是java.awt包 中Fra
4、me类的子类。因此JFrame类其子类 创建的对象是窗体。由于Frame是重量容 器,因此JFrame类或子类创建的对象(窗 体)也是重量容器。 3 . JApplet类类 JApplet类也是用来建立java小应用程序用 的。JApplet是Javax.swing包中的类,它 还是java.applet包中的Applet类的子类,因 此JApplet对象也是一个重量容器。 4 JDialog类类 JDialog 是java.awt包中Dialog类的子类。 JDialog类或子类创建的对象是也是重量容 器,该对象必须依附一个JFrame对象。 5 事件处理事件处理 重量组件的事件处理模式:授
5、权处理模式, 仍然适合于 轻组件的事件处理,即事件源、 监视器和接口。事件由事件源产生,为了 能处理相应类型的事件,事件源必须使用 相应的方法获得监视器。当事件发生时, 监视器使用接口中的方法对事件进行处理。 17.2 中间容器中间容器 我们已经知道轻组件都是容器,但仍有一 些经常用来添加组件的轻容器,相对于底 层重量容器而言,我们习惯上称这些轻容 器为中间容器。 1JPanel 面板面板 我们会经常使用JPanel创建一个面板,再 向这个面板添加组件,然后把这个面板添 加到底层容器或其他中间容器中。JPanel 面板的默认布局是FlowLayout布局。 2滚动窗口滚动窗口JScrollPa
6、ne 我们可以把一个组件放到一个滚动窗口中, 然后通过滚动条来观察这些组件。例如, JTextArea不自带滚动条(这一点与重量组 件TextArea不同),因此我们就需要把文 本区放到一个滚动窗口中。例如, JScorollPane scroll=new JScorollPane(new JTextArea(); 3. 拆分窗口拆分窗口JSplitPane 拆分窗口就是被分成两部分的窗口。拆分 窗口有两种类型:水平拆分和垂直拆分。 水平拆分窗口用一条拆分线把窗口分成左 右两部分,左面放一个组件,右面放一个 组件,拆分线可以水平移动。垂直拆分窗 口用一条拆分线把窗口分成上下两部分, 上面放一个
7、组件,下面放一个组件,拆分 线可以垂直移动。 17.3 各种组件各种组件 1. 按钮按钮(JButton) JButton 类负责创建按钮对象,与重量组件按钮类负责创建按钮对象,与重量组件按钮Button 相比,相比,JBtton按钮具有更加丰富的外观按钮具有更加丰富的外观. 2标签标签(JLabel) JLabel 类负责创建标签对象,与重量组件标签类负责创建标签对象,与重量组件标签Label相相 比,比,JLabel标签具有更加丰富的外观,例如我们可以创标签具有更加丰富的外观,例如我们可以创 建带图标的标签。建带图标的标签。 3复选框复选框(JCheckBox) JCheckBox 类负责
8、创建复选框对象。与重量组件复选框类负责创建复选框对象。与重量组件复选框 Checkbox相比,相比,JCheckBox复选框的名字不仅可以是复选框的名字不仅可以是 字符串,而且它的样子可以是一个图标。字符串,而且它的样子可以是一个图标。 4. 单选按钮单选按钮(JRadioButton) 单选按钮和复选框很类似,所不同的是:在单选按钮和复选框很类似,所不同的是:在 若干个复选框中我们可以同时选中多个,而若干个复选框中我们可以同时选中多个,而 一组单选按钮同一时刻只能有一个被选中。一组单选按钮同一时刻只能有一个被选中。 5 .下拉列表下拉列表(JComboBox) 用户可以在下拉列表看到第一个选
9、项和它旁用户可以在下拉列表看到第一个选项和它旁 边的箭头按钮,当用户单击箭头按钮时,对边的箭头按钮,当用户单击箭头按钮时,对 于下拉式列表事件源,可以发生于下拉式列表事件源,可以发生ItemEvent 事件。事件。 6. 文本框(文本框(JTextField)、密码框)、密码框 JPasswordField、文本区(、文本区(JTextArea) JTextField文本框、文本框、JTextArea文本区和重组件文本区和重组件 的文本框、文本区类似,分别用于显示单行文本的文本框、文本区类似,分别用于显示单行文本 和多行文本。例如,可以使用和多行文本。例如,可以使用 setText(Strin
10、g)设设 置文本,置文本,getText()获取文本,文本区还可以使用获取文本,文本区还可以使用 append(String)向文本区追加文本,口令框可以向文本区追加文本,口令框可以 使用使用setEchoChar(char c)设置回显字符等,设置回显字符等, JTextField文本框还可以调用文本框还可以调用 setHorizontalAlignment(int alignment)方法设方法设 置文本的对齐方式,其中置文本的对齐方式,其中alignment的有效值是的有效值是 JTextField.LEFT、JTextField.CENTER、 JTextField.RIGHT 、JT
11、extField.LEADING 、 JTextField.TRAILING 。 7文件选择器文件选择器(JFileChooser) 文件选择器是一个从文件系统中进行文件文件选择器是一个从文件系统中进行文件 选择的界面。文件选择器事实上并不能打选择的界面。文件选择器事实上并不能打 开或保存文件,它们只能替你得到要打开开或保存文件,它们只能替你得到要打开 或保存的文件对象,要想真正实现打开或或保存的文件对象,要想真正实现打开或 保存,必须还得使用输入、输出流。保存,必须还得使用输入、输出流。 8进度条进度条 使用使用JProgressBar类创建进度条组件。该类创建进度条组件。该 组件能用一种颜
12、色动态地填充自己,以便组件能用一种颜色动态地填充自己,以便 显示某任务完成的百分比。显示某任务完成的百分比。 9表格表格(JTable) 表格组件以行和列的形式显示数据,允许表格组件以行和列的形式显示数据,允许 对表格中的数据进行编辑。表格的模型功对表格中的数据进行编辑。表格的模型功 能强大、灵活并易于执行。能强大、灵活并易于执行。 10树树(JTree) 一个一个JTree类对象提供了一个用树型结构分层显示数据的类对象提供了一个用树型结构分层显示数据的 视图,树中最基本的对象叫做节点,它表示在给定层次视图,树中最基本的对象叫做节点,它表示在给定层次 结构中的数据项。树以垂直方式显示数据,每行显示一结构中的数据项。树以垂直方式显示数据,每行显示一 个节点。树中只有一个根节点,所有其它节点从这里引个节点。树中只有一个根节点,所有其它节点从这里引 出。除根节点外,其它节点分为两类:一类是带子节点出。除根节点外,其它节点分为两类:一类是带子节点 的分支节点,另一类是不带子节点的叶节点。每一个节的分支节点,另一类是不带子节点的叶节点。每一个节 点关联着一个描述该节点的文本标签和图像图标。文本点关联着一个描述该节点的文本标签和图像图标。文本 标签是节点的字符串表示,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年鹤壁辅警招聘考试题库完整参考答案详解
- 2025年镇江辅警协警招聘考试备考题库及答案详解(真题汇编)
- 2025年西双版纳州辅警协警招聘考试备考题库附答案详解ab卷
- 2025年淮南辅警招聘考试真题附答案详解(综合卷)
- 2025年银川辅警协警招聘考试备考题库含答案详解(满分必刷)
- 2025年贵州辅警招聘考试真题含答案详解(a卷)
- 2025年青岛辅警协警招聘考试真题含答案详解(精练)
- 2025年西宁辅警招聘考试题库附答案详解(综合卷)
- 9月证券从业资格《金融市场基础知识》考试真题及答案
- 2025年青岛辅警协警招聘考试真题及答案详解(新)
- 2025年房地产估价师《房地产评估》真题(含答案)
- 技能培训学校招生简章
- 农机安全警示教育培训课件
- DCS系统安全管理培训课件
- 施工现场夜间施工照明方案
- DG-TJ08-2482-2025 建设工程数智化检测技术标准
- 汽车更换轮胎操作指南
- 烧结车间设备培训课件
- 财务报表分析-理论与实务(第2版)课件 第二章 财务报表分析方法
- 脊柱后凸矫形课件
- 2025年公安机关人民警察高级执法资格考试真题及答案解析
评论
0/150
提交评论