Java_Swing窗体种类简介
### Java_Swing窗体种类简介 #### Swing概述 Swing是Java中的一种图形用户界面工具包,用于构建桌面应用程序。Swing提供了丰富的组件库,这些组件具有高度的可定制性,使得开发者能够创建出功能强大且外观美观的应用程序。Swing组件继承自`JComponent`类,这为开发者提供了统一的操作接口。 #### JComponent详解 `JComponent`是Swing中的基础类,所有的Swing组件都直接或间接地继承自这个类。它定义了一些通用的行为和属性,例如布局管理、事件处理等。开发者可以通过继承`JComponent`来创建自定义的组件。 #### JButton详解 `JButton`是Swing中最常用的组件之一,用于创建按钮。它可以显示文本、图标或者两者的组合。`JButton`的一些常用构造方法包括: - `JButton()`:无参数构造方法,默认不显示任何文本或图标。 - `JButton(String text)`:使用指定的文本初始化按钮。 - `JButton(Icon icon)`:使用指定的图标初始化按钮。 - `JButton(String text, Icon icon)`:同时使用指定的文本和图标初始化按钮。 此外,`JButton`还提供了一系列的方法来设置和获取按钮的各种属性,例如: - `setText(String text)`:设置按钮上的文本。 - `getIcon()`:获取按钮上的图标。 - `setIcon(Icon icon)`:设置按钮上的图标。 - `setHorizontalTextPosition(int pos)`:设置文本相对于图标的水平位置,其中常量有`AbstractButton.LEFT`、`AbstractButton.CENTER`、`AbstractButton.RIGHT`。 - `setVerticalTextPosition(int pos)`:设置文本相对于图标的垂直位置,其中常量有`AbstractButton.TOP`、`AbstractButton.CENTER`、`AbstractButton.BOTTOM`。 - `setMnemonic(char key)`:设置按钮的快捷键,通常与Alt键结合使用。 #### JFrame详解 `JFrame`是Swing中用来创建窗口的主要容器,它是`JWindow`的子类,继承了所有`JWindow`的功能,并添加了默认的关闭操作。`JFrame`的一些关键特性包括: 1. **基本创建**:可以直接使用`JFrame`创建一个基本的窗口。 2. **作为Swing应用的基础**:大多数Swing应用程序都是基于`JFrame`构建的。 3. **窗口的可定制性**:可以自定义窗口的大小、是否可调整大小、是否可以最小化或最大化等。 4. `getContentPane()`方法:用于获取窗口的主内容面板,便于添加组件。 #### JApplet、JDialog 和 JPanel - **JApplet**:用于创建Applet(嵌入网页的小程序),尽管随着Web技术的发展,它的使用已经逐渐减少。 - **JDialog**:用于创建对话框,通常作为顶级容器的子窗口出现,可以自定义其内容区域。 - **JPanel**:是最常用的容器之一,主要用于组织其他组件,可以设置不同的布局策略。 #### JInternalFrame详解 `JInternalFrame`是一个特殊的Swing组件,它通常用作`JDesktopPane`中的子窗口,允许用户在单个窗口中打开多个子窗口。`JInternalFrame`的一些重要特性包括: - 可以通过构造函数设置标题以及是否可以改变大小、关闭、最大化和最小化。 - 提供了对标题栏操作的支持,如关闭、最大化和最小化。 - 可以嵌套使用,实现更复杂的界面布局。 #### JSplitPane详解 `JSplitPane`用于创建分隔的面板,可以水平或垂直分割,支持动态调整两个子面板的比例。构造函数接受一个分割方向、是否连续调整大小以及两个子组件。 - 分割方向通过常量`HORIZONTAL_SPLIT`(水平)或`VERTICAL_SPLIT`(垂直)指定。 - 是否连续调整大小通过布尔值参数设置,如果设置为`true`,则在拖动分隔线时会实时更新子面板大小;如果是`false`,则只在释放鼠标时更新。 #### 结论 Swing为Java开发者提供了丰富的组件库,可以构建出各种类型的GUI应用程序。通过对上述组件的详细了解,可以帮助开发者更好地掌握Swing的核心概念和技术细节,进而构建出更加灵活、美观的应用程序。
1、Jcomponent类
◆Jcomponent类 是所有轻量组件的父类,主要的子类有:
◆JButton 创建按钮对象,而且可以创建在图标的按钮;JTree 创建树对象
◆JComboBox 创建组合框对象,和Choice相似;JCheckBox 创建复选框对象
◆JFileChooser 创建文件选择器;JInternalFrame 创建内部窗体
◆JLabel 创建标签;JMenu 创建菜单对象;JMenuBar 创建菜单条对象
◆JMenuItem 创建菜单项对象;JPanel 创建面板对象;JPasswordField 创建口令文本对象
◆JPopupMenu 创建弹出式菜单;JProgressBar 创建进程条;JRadioButton 创建单选按钮
◆JScrollBar 创建滚动条;JScrollPane 创建滚动窗格;JSlider 创建滚动条
◆JSplitPane 创建拆分窗格;JTable 创建表格;JTextArea 创建文本区
◆JTexPane 创建文本窗格;JToolBar 创建工具条;JToolTip 创建工具提示对象
2、JFrame类
JFrame类及其子类创建的对象是窗体
(1)JFrame类及其子类创建的窗体是Swing窗体
(2)不可以把组件直接加到Sing窗体中,应该把组件加到内容面板中
(3)不能为Sing窗体设置布局,而应当为内容面板设置布局
(4)Sing 窗体通过调用getContentPane()方法得到它的内容面板
3、JApplet类
(1)不可以把组件直接添加到小程序容器中,也应该添加到内容面板中
(2)不能为小程序设置布局
(3)小程序容器通过调用getContenPane()方法得到内容面板
4、JDialog类
(1)不可以把组件直接添加到对话框容器中,也应该添加到内容面板中
(2)不能为对话框设置布局
(3)对话框容器通过调用getContenPane()方法得到内容面板
- zuotaotao1232013-06-08东西很好,值得学习
- eRenChina2013-02-16不好,不值得
- 粉丝: 0
- 资源: 13
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- RL Base强化学习:信赖域策略优化(TRPO)算法TensorFlow实现
- RL Base强化学习:信赖域策略优化(TRPO)算法Pytorch 实现
- 全球各国家及城市json数据
- 用Rust实现仿nginx,力争实现一个可替代方案,http/https代理, socks5代理, 负载均衡, 反向代理, 静态文件服务器,四层TCP/UDP转发,websocket转发, 内网穿透N
- 计算机二级考试选择题练习模拟题70道及答案.doc
- 数据中台(大数据平台)数据建模存储标准规范.pdf
- Linux 平台下基于 Rust + GTK 开发的网易云音乐播放器
- 基于Rust语言的新一代组装式应用开发框架,它强调 简单性、可扩展性和生产力
- 数据中台(大数据平台)数据共享标准规范.pdf
- StratoVirt 基于Rust 编程语言 StratoVirt 轻量级、高效且安全 它还具有 Full Sence Support 和 Modules Flexible Splitting 等功能