Java Swing教程---界面设计
Swing 是一个用于 Java GUI 编程(图形界面设计)的工具包(类库);换句话说,Java 可以用来开发带界面的 PC 软件,使用到的工具就是 Swing。
不善表演
都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,都是转载的,
展开
-
25、Java Swing文本编辑器的实现
最简单的文本编辑器要数 Windows 的记事本了。在学习了本章知识之后,本次案例将完成一个简单的文本编辑器程序。它可以打开文本文件,并输出文本文件的位置和内容。其中用到了菜单、工具栏以及选项卡等组件,是一个综合类的应用,主要实现步骤如下。(1) 创建一个 TextFileOpener 类并继承 JFrame 父类。import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionLi原创 2020-10-27 10:37:44 · 503 阅读 · 0 评论 -
24、Java Swing JTabbedPane:选项卡组件
使用选项卡可以在有限的布局空间内展示更多的内容。Swing 使用 JTabbedPane 类实现选项卡。JTabbedPane 类创建的选项卡可以通过单击标题或者图标在选项卡之间进行切换。JTabbedPane 类的常用构造方法:JTabbedPane():创建一个具有默认 JTabbedPane.TOP 布局的空 TabbedPane。JTabbedPane(int tabPlacement):创建一个空的TabbedPane,使其具有以下指定选项卡布局中的一种:JTabbedPane.TOP、原创 2020-10-27 10:37:35 · 451 阅读 · 0 评论 -
23、Java Swing JTree:树组件
如果要显示一个层次关系分明的一组数据,用树结构是最合适的。树如同 Windows 资源管理器的左半部,可通过单击文件夹展开或者收缩内容。Swing 使用 JTree 类实现树,它的主要功能是把数据按照树状进行显示,其数据来源于其他对象。JTree 树中最基本的对象叫作节点,表示在给定层次结构中的数据项。树以垂直方式显示数据,每行显示一个节点。树中只有一个根节点,所有其他节点从这里引出。除根节点外,其他节点分为两类:一类是代子节点的分支节点,另一类是不带子节点的叶节点。JTree 类的常用构造方法:J原创 2020-10-27 10:37:28 · 208 阅读 · 0 评论 -
22、Java Swing JTable:表格
表格是 Swing 新增加的组件,主要功能是把数据以二维表格的形式显示出来,并且允许用户对表格中的数据进行编辑。表格组件是最复杂的组件之一,它的表格模型功能非常强大、灵活而易于执行。由于篇幅有限,本节只介绍默认的表格模型。Swing 使用 JTable 类实现表格,常用构造方法如下所示。JTable():构造一个默认的 JTable,使用默认的数据模型、默认的列模型和默认的选择模型对其进行初始化。JTable(int numRows,int numColumns):使用 DefaultTableMo原创 2020-10-27 10:37:19 · 1746 阅读 · 0 评论 -
21、Java Swing JOptionPane:对话框组件
对话框通常用作从用户处接收附加信息,或者提供发生了某种事件的通知。Java 提供了 JOptionPane 类,用来创建标准对话框,也可以通过扩展 JDialog 类创建自定义的对话框。JOptionPane 类可以用来创建 4 种类型的标准对话框:确认对话框、消息对话框、输入对话框、选项对话框。确认对话框确认对话框显示消息,并等待用户单击“确定”按钮来取消对话框,该对话框不返回任何值。而确认对话框询问一个问题,需要用户单击合适的按钮做出响应。确认对话框返回对应被选按钮的值。创建确认对话框原创 2020-10-27 10:37:12 · 432 阅读 · 0 评论 -
20、Java Swing JFileChooser和JColorChooser:文件选择器和颜色选择器
在开发应用程序时经常需要选择文件和选择颜色的功能。例如,从选择的文件中导入数据,为窗体选择背景颜色等。本节详细介绍 Swing 中文件选择器和颜色选择器的使用。文件选择器文件选择器为用户能够操作系统文件提供了桥梁。swing 中使用 JFileChooser 类实现文件选择器,该类常用的构造方法如下。JFileChooser():创建一个指向用户默认目录的 JFileChooser。JFileChooser(File currentDirectory):使用指定 File 作为路径来创建 JFi原创 2020-10-26 17:07:31 · 670 阅读 · 0 评论 -
19、Java Swing JToolBar:工具栏组件
工具栏提供了一个用来显示常用按钮和操作的组件。它可以把任意类型的组件附加到工具条上,但是通常是增加按钮。工具栏 JToolBar 类的常用构造方法:JToolBar() ----创建新的工具栏,默认的方向为 HORIZONTAL(水平方向)JToolBar(int orientation) ----创建具有指定 orientation(定位) 的新工具栏JToolBar(String name)---- 创建一个具有指定 name 的新工具栏JToolBar(String name,int o原创 2020-10-26 17:07:24 · 541 阅读 · 0 评论 -
18、Java Swing JMenu和JPopupMenu:菜单和弹出式菜单
菜单由 Swing 中的 JMenu 类实现,可以包含多个菜单项和带分隔符的菜单。在菜单中,菜单项由 JMenuItem 类表示,分隔符由 JSeparator 类表示。菜单本质上是带有关联 JPopupMenu 的按钮。当按下“按钮”时,就会显示 JPopupMenu。如果“按钮”位于 JMenuBar 上,则该菜单为顶层窗口。如果“按钮”是另一个菜单项,则 JPopupMenu 就是“下拉”菜单。JMenu 类的常用方法创建菜单常用构造方法有两个:JMenu() 和 JMenu(String原创 2020-10-26 17:07:16 · 1702 阅读 · 0 评论 -
17、Java Swing Timer:计时器组件
计时器(Timer)组件可以在指定时间间隔触发一个或多个 ActionEvent。设置计时器的过程包括创建一个 Timer 对象,在该对象上注册一个或多个动作侦听器,以及使用 start() 方法启动该计时器。例如,以下代码创建并启动一个每秒(该时间由 Timer 构造方法的第一个参数指定)触发一次动作事件的计时器。Timer 构造方法的第二个参数指定接收计时器动作事件的监听器。int delay=1000; //时间间隔,单位为毫秒ActionListener taskPerformer=n原创 2020-10-26 17:07:08 · 654 阅读 · 1 评论 -
16、Java Swing JProgressBar:进度条组件
**进度条(JProgressBar)**是一种以可视化形式显示某些任务进度的组件。JProgressBar 类实现了一个用于为长时间的操作提供可视化指示器的 GUI 进度条。在任务的完成进度中,进度条显示该任务完成的百分比。此百分比通常由一个矩形以可视化形式表示,该矩形开始是空的,随着任务的完成逐渐被填充。此外,进度条可显示此百分比的文本表示形式。JProgressBar 类的常用构造方法和 JSlider 类的常用构造方法一样,这里不再重复。如下示例代码演示了如何创建一个 JProgressBar原创 2020-10-26 16:37:25 · 891 阅读 · 0 评论 -
15、Java Swing JSlider:滑块组件
在前面的章节中,我们介绍了 Swing 设计简单界面所需的窗口、布局组件以及如何响应事件。Swing 还提供了很多高级组件,如菜单栏、工具栏、文件选择器、表格以及树等。使用这些高级组件可以实现更为复杂的布局,也可以使程序界面更加人性化,以提高程序的灵活性。在学习其他高级组件之前,我们先来介绍一些布局组件,包括滑块、进度条、计时器、菜单栏和工具栏,本节我们首先来介绍滑块。滑块滑块(JSlider)是一个允许用户在有限区间内通过移动滑块来选择值的组件。JSlider 类的常用构造方法如表 1 所示。J原创 2020-10-26 16:37:19 · 779 阅读 · 0 评论 -
14、Java Swing星座选择器界面的实现
在了解各种基本组件的使用,以及常见事件的处理之后,本案例将综合文本框、按钮和下拉列表组件,实现一个星座选择器程序。程序允许用户在下拉列表中选择一个自己的星座,如果不在列表中还可以增加星座,也可以删除星座。实现过程如下。(1) 创建一个 SampeDemo 类,在 main() 方法中调用它的构造方法。代码如下:import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.I原创 2020-10-26 16:37:10 · 256 阅读 · 0 评论 -
13、Java Swing事件监听:事件处理模型和事件监听器
事件表示程序和用户之间的交互,例如在文本框中输入,在列表框或组合框中选择,选中复选框和单选框,单击按钮等。事件处理表示程序对事件的响应,对用户的交互或者说对事件的处理是事件处理程序完成的。当事件发生时,系统会自动捕捉这一事件,创建表示动作的事件对象并把它们分派给程序内的事件处理程序代码。这种代码确定了如何处理此事件以使用户得到相应的回答。事件处理模型前面我们讲解了如何放置各种组件,使图形界面更加丰富多彩,但是还不能响应用户的任何操作。若使图形界面能够接收用户的操作,必须给各个组件加上事件处理机制。在事原创 2020-10-26 16:37:05 · 990 阅读 · 0 评论 -
12、Java Swing计算器界面的实现
在本节之前已经详细介绍了 Swing 中容器、布局管理器以及常用的基本组件。本案例将综合运用这些知识实现一个计算器的布局。在本实例中使用两种布局管理器来进行界面设计。计算器界面可以分成两部分,即显示区和键盘区。显示区可以使用文本框组件,键盘区则是由很多按钮组成,可以使用网格布局管理器。详细的实现过程如下。(1) 新建一个继承自 JFrame 的 CalculatorDemo 类。(2) 为类添加构造方法和 main() 方法,主要代码如下所示。import java.awt.BorderLa原创 2020-10-26 16:36:51 · 880 阅读 · 0 评论 -
11、Java Swing JList:列表框组件
列表框与下拉列表的区别不仅仅表现在外观上,当激活下拉列表时,会出现下拉列表框中的内容。但列表框只是在窗体系上占据固定的大小,如果需要列表框具有滚动效果,可以将列表框放到滚动面板中。当用户选择列表框中的某一项时,按住 Shift 键并选择列表框中的其他项目,可以连续选择两个选项之间的所有项目,也可以按住 Ctrl 键选择多个项目。Swing 中使用 JList 类来表示列表框,该类的常用构造方法如下。JList()----构造一个空的只读模型的列表框。JList(ListModel dataMod原创 2020-10-23 14:35:26 · 3859 阅读 · 0 评论 -
10、Java Swing JComboBox:下拉列表组件
下拉列表的特点是将多个选项折叠在一起,只显示最前面的或被选中的一个。选择时需要单击下拉列表右边的下三角按钮,这时候会弹出包含所有选项的列表。用户可以在列表中进行选择,也可以根据需要直接输入所要的选项,还可以输入选项中没有的内容。下拉列表由 JComboBox 类实现,常用构造方法如下。JComboBox()----创建一个空的 JComboBox 对象。JComboBox(ComboBoxModel aModel)----创建一个 JComboBox,其选项取自现有的ComboBoxModel原创 2020-10-23 14:35:12 · 1409 阅读 · 0 评论 -
9、Java Swing JRadioButton:单选按钮组件
单选按钮与复选框类似都有两种状态,不同的是一组单选按钮中只能有一个处于选中状态。Swing 中 JRadioButton 类实现单选按钮,它与 JCheckBox 一样都是从 JToggleButton 类派生出来的。JRadioButton 通常位于一个 ButtonGroup 按钮组中,不在按钮组中的 JRadioButton 也就失去了单选按钮的意义。在同一个 ButtonGroup 按钮组中的单选按钮,只能有一个单选按钮被选中。因此,如果创建的多个单选按钮其初始状态都是选中状态,则最先加入 B原创 2020-10-23 14:35:07 · 1137 阅读 · 1 评论 -
8、Java Swing JCheckBox:复选框组件
一个复选框有选中和未选中两种状态,并且可以同时选定多个复选框。Swing 中使用 JCheckBox 类实现复选框,JCheckBox类的常用构造方法如下。JCheckBox():创建一个默认的复选框,在默认情况下既未指定文本,也未指定图像,并且未被选择。JCheckBox(String text):创建一个指定文本的复选框。JCheckBox(String text,boolean selected):创建一个指定文本和选择状态的复选框。例 1使用 JFmme 组件创建一个窗口,然后使用原创 2020-10-23 14:33:55 · 366 阅读 · 0 评论 -
7、Java Swing JTextArea:文本域组件。 JScrollPane:滚动窗口
文本域与文本框的最大区别就是文本域允许用户输入多行文本信息。在 Swing 中使用 JTextArea 类实现一个文本域,JTextArea`常用构造方法如下:JTextArea()----创建一个默认的文本域。JTextArea(int rows,int columns)----创建一个具有指定行数和列数的文本域。JTextArea(String text)----创建一个包含指定文本的文本域。JTextArea(String text,int rows,int columns)----创建一原创 2020-10-26 16:36:58 · 1776 阅读 · 0 评论 -
6、Java Swing JTextField:单行文本框组件
Swing 中使用 JTextField 类实现一个单行文本框,它允许用户输入单行的文本信息。JTextField类的常用构造方法如下:JTextField()----创建一个默认的文本框。JTextField(String text)----创建一个指定初始化文本信息的文本框。JTextField(int columns)----创建一个指定列数的文本框。JTextField(String text,int columns)----创建一个既指定初始化文本信息,又指定列数的文本框。JTex原创 2020-10-23 14:33:49 · 547 阅读 · 0 评论 -
5、Java Swing JButton:按钮组件
按钮是图形界面上常见的元素,在前面已经多次使用过它。在 Swing 中按钮是 JButton 类的对象,JButton 类的常用构造方法如下。JButton():创建一个无标签文本、无图标的按钮。JButton(Icon icon):创建一个无标签文本、有图标的按钮。JButton(String text):创建一个有标签文本、无图标的按钮。JButton(String text,Icon icon):创建一个有标签文本、有图标的按钮。JButton 类的常用方法:addActionLi原创 2020-10-23 14:33:39 · 1393 阅读 · 1 评论 -
4、Java Swing JLable:标签组件
在添加了容器并指定了布局管理方式之后,便可以向容器中添加各种展示类的组件,像标签、按钮、单选和多选框等。本节将介绍 Swing 中标签组件的用法。标签标签是一种可以包含文本和图片的非交互组件,其文本可以是单行文本,也可以是 HTML 文本。对于只包含文本的标签可以使用 JLabel 类,JLabel类的主要构造方法有如下几种形式。JLabel()----创建无图像并且标题为空字符串的 JLabel。JLabel(Icon image)----创建具有指定图像的 JLabel。JLabel(St原创 2020-10-23 14:33:31 · 496 阅读 · 0 评论 -
3、Swing布局管理器
在使用 Swing 向容器添加组件时,需要考虑组件的位置和大小。如果不使用布局管理器,则需要先在纸上画好各个组件的位置并计算组件间的距离,再向容器中添加。这样虽然能够灵活控制组件的位置,实现却非常麻烦。为了加快开发速度,Java 提供了一些布局管理器,它们可以将组件进行统一管理,这样开发人员就不需要考虑组件是否会重叠等问题。本节介绍 Swing 提供的 6 种布局类型,所有布局都实现 LayoutManager 接口。边框布局管理器BorderLayout(边框布局管理器)是 Window、JFram原创 2020-10-23 14:33:21 · 910 阅读 · 1 评论 -
2、Java Swing JFrame和JPanel:窗口容器和面板容器
在 Swing 中,任何其他组件都必须位于一个顶层容器中。JFrame 窗口和 JPanel 面板是常用的顶层容器,本节详细介绍这两个容器的使用方法。JFrame 窗口JFrame 用来设计类似于 Windows 系统中窗口形式的界面。JFrame 是 Swing 组件的顶层容器,该类继承了 AWT 的 Frame 类,支持 Swing 体系结构的高级 GUI 属性。JFrame 类的常用构造方法如下所示。JFrame():构造一个初始时不可见的新窗体。JFrame(String title原创 2020-10-23 14:33:11 · 1785 阅读 · 0 评论 -
1、Swing简介:Swing是什么?
Swing 是新一代的图形界面工具。使用 Swing 来开发图形界面比 AWT 更加优秀,因为 Swing 是一种轻量级组件,它采用纯 Java 实现,不再依赖于本地平台的图形界面,所以可以在所有平台上保持相同的运行效果,对跨平台支持比较出色。除此之外,Swing 提供了比 AWT 更多的图形界面组件,因此可以开发出美观的图形界面程序。Swing 类库结构Swing 组件都采用 MVC(Model-View-Controller,即模型-视图-控制器)的设计,实现 GUI 组件的显示逻辑和数据逻辑的分离原创 2020-10-23 14:32:04 · 4527 阅读 · 0 评论