![](https://img-blog.csdnimg.cn/20191218154150728.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Swing
Swing可视化编程
辛勤小王子
分享编程过程中遇到的问题和解决办法,大家一起进步
展开
-
GridBagConstraints常用参数解析
gridx,gridy: 相对于容器左上角的x,y坐标gridwidth,gridheight: 设置组件横向与纵向的单元格跨越个数。weightx,weighty: 是否拉伸(0不拉伸,1拉伸)insets: 设置元素的位置,类似html的margin,只是顺序有点不一样,依次是上,左,下,右。 java.awt.Insets.Insets(int top, int left, int bottom, int right)fill: 当某个组件未能填满单元格..原创 2021-03-01 16:42:57 · 495 阅读 · 0 评论 -
JComboBox添加监听时,为什么会执行两次
博客原文:http://blog.sina.com.cn/s/blog_68555ee50100skmz.htmlJava中itemStateChanged事件执行两次的解释:从该事件的字面意思来理解,就是item的状态发生改变时触发该事件,item在这里的状态有两个,Selected 和 deSelected(即选中和未被选中),所以,当改变下拉列表中被选中的项的时候,其实是触发了两次事件,第一次是上次被选中的项的 State 由 Selected 变为 deSelected ,即取消选择, 第二次是转载 2021-01-07 16:07:14 · 269 阅读 · 0 评论 -
Swing选项卡(JTabbedPane)自定义选项卡样式
Demo34_JTabbedPane.java:package swing;import java.awt.BorderLayout;import java.awt.Dimension;import java.awt.Font;import java.awt.GridLayout;import javax.swing.ImageIcon;import javax.swing.JComponent;import javax.swing.JFrame;import javax.swing.JL原创 2020-05-28 11:10:12 · 2854 阅读 · 0 评论 -
Swing边框大全
public static void main(String[] args) { JFrame frame = new JFrame("边框演示"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); panel.setLayout(new GridLayout(0,...原创 2020-04-21 09:05:10 · 367 阅读 · 0 评论 -
Swing 实例——文本编辑器
本次案例将完成一个简单的文本编辑器程序。它可以打开文本文件,并输出文本文件的位置和内容。其中用到了菜单、工具栏以及选项卡等组件,是一个综合类的应用,主要实现步骤如下。参考资料:添加链接描述package swing;import java.awt.BorderLayout;import java.awt.Toolkit;import java.awt.event.ActionEvent...原创 2019-12-19 09:54:26 · 507 阅读 · 0 评论 -
Swing选项卡(JTabbedPane)的使用
使用选项卡可以在有限的布局空间内展示更多的内容。Swing 使用 JTabbedPane 类实现选项卡。参考资料:添加链接描述一、构造方法:JTabbedPane():创建一个具有默认 JTabbedPane.TOP 布局的空 TabbedPane。JTabbedPane(int tabPlacement):创建一个空的TabbedPane,使其具有以下指定选项卡布局中的一种:JTa...原创 2019-12-19 09:47:24 · 3519 阅读 · 0 评论 -
Swing 树(JTree)的使用
如果要显示一个层次关系分明的一组数据,用树结构是最合适的。树如同 Windows 资源管理器的左半部,可通过单击文件夹展开或者收缩内容。Swing 使用 JTree 类实现树,它的主要功能是把数据按照树状进行显示,其数据来源于其他对象。JTree 树中最基本的对象叫作节点,表示在给定层次结构中的数据项。树以垂直方式显示数据,每行显示一个节点。树中只有一个根节点,所有其他节点从这里引出。除根节点外...原创 2019-12-19 09:39:53 · 1430 阅读 · 0 评论 -
Swing 表格(JTable)的使用
表格是程序中一种很常见的组件,Swing中的表格是:JTable,表格的功能是把数据以二维表格的形式显示出来,并且允许用户对表格中的数据进行编辑。今天我们来介绍一下JTable的简单使用一、构造方法:构造方法1:JTable(int numRows,int numColumns):使用 DefaultTableModel 构造具有 numRows 行和 numColumns 列个空单元格的 ...原创 2019-12-19 09:33:00 · 6683 阅读 · 4 评论 -
Swing 常用的对话框
对话框通常用作从用户处接收附加信息,或者提供发生了某种事件的通知。Java 提供了 JOptionPane 类,用来创建标准对话框,JOptionPane 类可以用来创建 4 种类型的标准对话框:确认对话框、消息对话框、输入对话框和选项对话框。接下来我们就来一一学习。第一种:确认对话框JOptionPane.showConfirmDialog(null, “确定要删除吗?”);JOp...原创 2019-12-19 09:25:20 · 1436 阅读 · 0 评论 -
Swing颜色选择器(JColorChooser )
JColorChooser 类提供一个用于允许用户操作和选择颜色的控制器窗格。参考资料:[http://c.biancheng.net/view/1252.html]一、构造方法:JColorChooser():创建初始颜色为白色的颜色选取器窗格。JColorChooser(Color initialColor):创建具有指定初始颜色的颜色选取器窗格。JColorChooser(Co...原创 2019-12-19 09:14:01 · 1295 阅读 · 0 评论 -
Swing文件选择器(JFileChooser)的使用
在程序开发中,我们经常会使用到文件选择器来读取本地文件或者保存文件到本地的一个目录中。Java Swing的文件选择器是JFileChooser,今天我们就来学习一下JFilechooser的使用一、构造方法构造方法1: JFileChooser():创建一个指向用户默认目录的 JFileChooser。构造方法2: JFileChooser(File currentDirecto...原创 2019-12-19 09:04:37 · 7795 阅读 · 6 评论 -
Swing工具栏(JToolBar)的使用
工具栏是程序中常见的一种组件,比如Word和Excel工作区上方的工具栏。Java Swing也有工具栏组件:JToolBar,今天我们就来学习和回顾一下工具栏的使用一、构造方法常用的构造方法如下:构造方法1: JToolBar()创建新的工具栏,默认的方向为 HORIZONTAL(水平)构造方法2: JToolBar(int orientation)创建具有指定 orientation...原创 2019-12-19 08:55:36 · 2396 阅读 · 0 评论 -
Swing弹出式菜单(JPopuMenu)的使用
弹出式菜单由 JPopupMenu 类实现,它是一个可弹出并显示一系列选项的小窗口。它还用于当用户选择菜单项并激活它时显示的“右拉式(pull-right)”菜单,可以在想让菜单显示的任何其他位置使用。本文参考:http://c.biancheng.net/view/1245.htmlpackage swing;import java.awt.Toolkit;import java.awt...原创 2019-12-19 08:47:22 · 1519 阅读 · 0 评论 -
Swing计时器(Timer)组件的使用
计时器(Timer)组件可以在指定时间间隔触发一个或多个 ActionEvent。设置计时器的过程包括创建一个 Timer 对象,在该对象上注册一个或多个动作侦听器,以及使用 start() 方法启动该计时器。具体如何过程如下:一、构造方法Timer timer = new Timer(int delay, ActionListener listener)创建一个计时器,并初始化初始延迟和事...原创 2019-12-19 08:39:35 · 2393 阅读 · 0 评论 -
Swing 下拉菜单的使用
菜单在日常的软件使用中是很常见的一种组件,Java Swing中的菜单由 JMenu 类实现,可以包含多个菜单项和带分隔符的菜单。在菜单中,菜单项由 JMenuItem 类表示,分隔符由 JSeparator 类表示。具体怎么使用呢?接下来小编就整理分享给大家,Swing菜单的用法。一、构造方法构造方法1: 创建一个无文本的 JMenu 对象 JMenu menu=new JMenu();...原创 2019-12-18 18:00:02 · 1000 阅读 · 0 评论 -
Swing进度条组件的使用
进度条(JProgressBar)是一种以可视化形式显示某些任务进度的组件,比如我们常见的视频播放进度,音乐播放进度,下载进度等都用到了进度条。在任务的完成进度中,进度条显示该任务完成的百分比,看起来很直观。Java Swing也有进度条组件:JProgressBar ,那么JProgressBar 要怎么用呢?接下来小编就来介绍一下进度条的使用一、构造方法JProgressBar常用的构造方...原创 2019-12-18 17:53:01 · 1833 阅读 · 0 评论 -
Swing滑块组件的使用
滑块是程序中的一种常见组件,比如调节音量的滑块,音乐播放器的进度滑块等。Java Swing中也有滑块组件:JSlider,那么Java的滑块组件要怎么使用呢?接下来我们就来一起学习一下JSlider的使用方法。一、构造方法滑块(JSlider)是一个允许用户在有限区间内通过移动滑块来选择值的组件。构造方法1:JSlider() 创建一个范围在 0~100 且初始值为 50 的水平滑块...原创 2019-12-18 17:43:16 · 807 阅读 · 0 评论 -
Swing实例——星座选择器
我们知道下拉列表组件JComboBox可以选择列表中的其中一项并展示在下拉列表框中。而选择了列表项目要让程序执行什么动作,这就要用到监听:addItemListener(item的改变事件),具体是怎么操作的呢?今天我们就来一起做一个实例——星座选择器,一步一步的构建这个界面的组件和它们的监听事件一、设计程序界面首先设计一下程序界面,包括一个JFrame窗口,窗口中有一个JComboBox下拉...原创 2019-12-18 17:29:34 · 160 阅读 · 0 评论 -
Swing事件处理模型和事件监听器
一个完整的Swing程序除了有窗口有组件之外,还要让这些按钮之类的组件可以点击,并且点击之后会执行一些操作。这个在Java中叫作事件。点击操作叫作事件,点击之后执行的内容则在事件处理中完成。具体怎么实现呢?接下来我们来看看具体的步骤一、事件处理模型当我们在窗体中放置了各种组件之后图形界面已经很丰富了,但是还不能响应用户的任何操作。若使图形界面能够接收用户的操作,必须给各个组件加上事件处理机制。...原创 2019-12-18 17:16:33 · 439 阅读 · 0 评论 -
Swing实例——计算器
学习了Swing的容器,布局方式和组件的知识之后,我们就可以运用学习过的这些知识来做一个计算器界面了,具体怎么实现呢?接下来我们就来一起见证计算器界面从无到有,组件从少到多的过程。1、首先需要创建一个窗体,用来存放计算器的按钮和文本框组件:2、创建一个JPanel中间容器panel1,添加到窗体的上方(north),用来存放计算器的文本框,文本框内容居右对齐3、创建一个JPanel中...原创 2019-12-18 17:03:10 · 504 阅读 · 0 评论 -
Swing常用组件
我们知道一个完整的程序界面包括窗口和窗口中的各种组件,常见的组件有按钮,文本框,下拉框等等。Swing中也有类似这样的组件,它们是怎么用的呢?今天就和大家一起学习回顾一下这方面的知识。 本篇介绍:JLabel、JButton、JTextField 、JTextArea 、JCheckBox、JRadioButton 、JComboBox 和JList这8种常见组件一、标签组件:JLabel标签...原创 2019-12-18 16:56:25 · 719 阅读 · 0 评论 -
Java Swing的布局管理器
在Swing的实际开发中,开发人员在添加组件到容器中的时候可以自由调整组件的大小和在容器中的位置,这样虽然很灵活,但操作起来却很麻烦。为了加快开发速度,Java 提供了一些布局管理器,它们可以将组件进行统一管理,这样开发人员就不需要考虑组件是否会重叠等问题。今天我们就来学习和回顾一下Swing的几种布局管理器的布局方式,布局特点,各种布局方式的使用,并为每一种布局方式附上一个小例子,方便大家理解。...原创 2019-12-18 16:19:43 · 2110 阅读 · 0 评论 -
Swing入门知识
初学Java的同学可能会觉得敲代码比较枯燥无味,自己辛苦打了代码却只能在控制台打印出来,什么时候做出像电脑中经常使用的那种软件,有窗口有按钮的那样。真的很期待有没有,其实Java本身就自带这样一个图形界面工具。它就是Swing,是一种轻量级组件,它是用纯Java实现的,不再依赖于本地平台的图形界面,所以可以在所有平台上保持相同的运行效果,对跨平台支持比较出色。今天我们就来学习一些Swing的基础知...原创 2019-12-18 15:56:48 · 2847 阅读 · 0 评论