Swing窗口编程是Java里面一个开发图形界面的方法,是一种轻量级组件。因为采用的是100%的java实现,不再依赖于本地平台的图形界面,所以可以在所有平台上保持相同的运行效果。其对跨平台支持比较出色
随着越来越多的编程软件出现,Swing窗口编程已经不被广泛使用了。几乎很少有人会专门用Swing去写一个正式的窗口程序,还在使用的大部分都是抱着兴趣没事自己写着玩的心态去编程。但是我们还是要做一个了解,毕竟没事玩一玩也是很有乐趣的不是吗?
使用Swing开发图形界面有如下几个优势:
- Swing组件不在依赖于本地平台的GUI(Graphical User Interface),即图形用户界面。无需采用各种平台的GUI交集,因此Swing提供了大量图形界面组件,远远超出了AWT所提供的图形界面组件集
- Swing组件不在依赖于本地平台GUI,因此不会产生与平台相关的bug
- Swing组件在各种平台上运行时可以保证具有相同的图形界面外观
对于刚开始打算接触接触Swing窗口编程的朋友,可以跟着以下步骤做一个小小的窗口程序感受一下:
1.首先创建一个JFrame对象和JPanel对象
创建好以后将JPanel的对象添加到JFrame中,这里JFrame的作用类似于平时画画时的画板。当然画画不能在画板上画了,所以JPanel就充当起了画纸的作用(以下将JFrame概述为画板,JPanel概述为画纸)
2.然后设置画板的大小(画纸随着画板的大小自动会进行调整)
3.设置画板的位置居中
4.设置画板默认关闭的选项(如果不设置,那么实际关闭程序后,程序还会在后台继续运行)
5.开始绘画!
在绘画之前,需要了解的是在画在纸上的东西的坐标如何确立。在电脑上,如果画一个坐标系,那么左上角就是0.0点,往左x逐渐增大,往下y逐渐增大。搞清楚了这些,我们才可以在想要的位置出现预期的效果,紧接着我们需要用到一个Graphics的对象,这个充当画笔的角色(由于当前类继承了JPanel,所以重新paint方法后悔自动执行)
例:在中心出现一个“HelloWorld”
到此时基本上就完工看了。什么?你说看不到窗口。让我瞅瞅……哦~是因为这个时候的窗口还是不可见的,需要我们再次进行设置可视
最后运行出来结果就是这样:
源码:
结果:
你成功了吗
由于本人水平有限,对于Swing的理解与运用并不多。所以只能提到这一小部分,如果有兴趣,可以自己在网上寻找有关制作的小程序,里面有Swing的部分教学,经典的案例有:扫雷、五子棋、俄罗斯方块等