JavaSwing
在本周Java程序设计课上,老师讲解了Java Swing这一章的内容,它是一个为Java设计的GUI工具包。Swing是JAVA基础类的一部分。Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。课堂上我听的并不是很懂,对这部分内容一知半解,但老师说的一句话让我对这个内容产生了好奇心,老师上课说:关于Java Swing部分的知识,你们可能也只会在大学中接触到它了,等到将来入职时候,Swing应该不会在接触到了。
这启发了我去了解为什么Java Swing会被淘汰?查阅多方面资料后,我得到了如下结论:
1.在企业中,但凡是用Java开发的项目,本身便是以盈利为最终导向,所以自然而然地,企业不会选择用Swing框架。
2.在业内如果需要做界面编程,通常都会采用.NET框架,它是微软的开发工具,而windows也是微软的产品,所以.NET能驾轻就熟地调用windows各种底层,实现界面和各种事件。
3.如果遇到不同的操作系统,需要为不同的操作系统开发一套客户端。
4.B/S系统的强势崛起,因为B/S架构多用WEB网页进行开发,不需要安装客户端,在浏览器上打开,一旦代码发生变更,客户端不需要进行升级。
虽然Swing不会应用在我们之后的工作中,但这并不代表它没用,Swing的学习我认为还是很有必要开展的,它相当于是我们的启蒙老师的这样一个角色。
Swing能够干什么?1)做系统,比如医院的软件。
2)做各种小游戏,提升逼格。
3)Intellij IDEA就是java swing开发的
4)毕业设计用的挺多。
Swing容器
Swing 中容器可以分为两类:顶层容器和中间容器,容器类都是继承自 Container 类。
顶层容器:
是进行图形编程的基础,一切图形化的东西都必须包括在顶层容器中。Swing中有三种顶层容器,分别是JFrame、JDialog 和 JApplet。
中间容器:
是容器组件的一种,也可以承载其他组件,但中间容器不能独立显示,必须依附于其他的顶层容器。常见的中间容器有 JPanel、JScrollPane、JTabbedPane 和 JToolBar。
| 组件名称 | |
| JButton | 按钮,可以设置背景图片或文字 |
| JCheckBox | 复选框组件 |
| JComboBox | 下拉列表框,可以在下拉显示区域显示多个选项 |
| JFrame | 框架类 |
| JDialog | 对话框 |
| JLabel | 标签组件 |
| JRadioButton | 选按钮 |
| JList | 代表能够在用户界面中显示一系列条目的组件 |
| JTextField | 文本框 |
| JPasswordField | 密码框 |
| JTextArea | 文本区域 |
| JOptionPane | 对话框 |
1.实例化JFrame对象,也就是创建一个窗体。
2.设置窗体的相关属性。
3.获取一个容器。
4.创建组件。
5.向容器添加组件。
6.使窗体可视。
import java.awt.Container;
import javax.swing.JButton;
import javax.swing.JFrame;
public class SwingLearn {
public static void main(String[] args) {
//实例化 JFrame
JFrame frame = new JFrame();
//设置相关属性
frame.setTitle("Swing学习");//标题
frame.setSize(300,300);//窗体大小
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//点击关闭按钮是关闭程序
frame.setLocationRelativeTo(null); //设置居中
frame.setResizable(false); //不允许修改界面大小
//获取容器
Container container = frame.getContentPane();
frame.setLayout(null);
//创建按钮
JButton jButton = new JButton("我是按钮");
jButton.setBounds(100, 100, 100, 40);
//按钮添加到容器中
container.add(jButton);
//设置显示
frame.setVisible(true);
}
}
其实学习Swing框架对我们还是有很多好处的,Swing的学习让我们不在停留在简单的输入输出了,我们也能做出有界面的小程序了,这样能给自己带来很大的成就感。同时Swing本身就是十分优秀的,通过对Swing的学习,我们可以学习在开发中实用的设计思想,布局、常用的组件之类的,对于我们大三开展Java。eb这一课程的学习很有帮助,因为它们的设计思想是相似的。



