Java第十八章 Swing程序设计

本文详细介绍了Java Swing库用于开发桌面应用的组件和功能,包括JFrame、JDialog对话框、JOptionPane小型对话框、布局管理器如FlowLayout和GridLayout,以及JButton、JRadioButton、JCheckBox等组件的使用。Swing虽然逐渐被其他技术取代,但作为JDK自带的GUI框架,它展示了Java在面向对象和事件处理方面的设计模式。
摘要由CSDN通过智能技术生成

Swing 用于开发桌面窗体程序,是JDK的第二代GUI框架,其功能比JDK第一代GUI框架AWT更为强大、性能更加优良。但因为Swing技术推出时间太早,其性能、开发效率等不及一些其他流行技术,所以目前市场上大多数桌面窗体程序都不是由Java开发的,Swing技术也逐渐被广大开发人员放弃了。

不过,Swing是JDK自带的功能,并且能非常好体现Java语言在面向对象、接口事件等方面的设计模式.

Swing 常用窗体
JFrame 窗体     

   JFrame 类的常用构造方法包括以下两种形式:public JFrame(): 创建一个初始不可见、没有标题的窗体。
public JFrame(String title): 创建一个不可见、具体标题的窗体。\n        在创建窗体后,先调用 getContentPane() 方法将窗体转换为容器,再调用 add() 方法或者 remove() 方法向容器中添加组件或者删除容器中的组件。向容器中添加按钮,关键代码如下:JButton okButn=new JButton("确定 ")container.add(okButn);删除容器中的按钮, 关键代码如下:container.remove(okButn);
     在创建窗体后,要对窗体进行设置,如设置窗体的位置、大小、是否可见等。具体如下:setBounds(int x , int y , int width , int length):  设置窗体左上角在屏幕中坐标为(x , y),窗体的宽度为 width,窗体的高度为height。setLocation(int x , int y):  设置窗体左上角在屏幕中的坐标为(x , y)。
setSize(int width , int height): 设置窗体的宽度为 width,高度为 height。setVisible(boolean b): 设置窗体是否可见。b 为 true 时,表示可加;b 为 false 时,表示不可见。setDefaultCloseOperation(int operation):  设置窗体的关闭方式,默认值为 DISPOSE_NO_CLOSE。

【18.1】代码如下:

结果:

JDialog 对话框 
   JDialog 对话框继承了 java.awt.Dialog 类,其功能是从一个窗体中弹出另一个窗体,如使用 IE 浏览器时弹出的确定对话框。JDialog 对话框与JFrame 窗体类似,被使用时也需 getContentPane() 方法把 JDialog 对话框转换为容器,再对 JDialog 对话框进行设置。

【18.2】代码:

运行结果:

JOptionPane 小型对话框 
        Java API 中的,Javax.swing,JOptionPane 类时一个非常简便的小型对话框类,该类用于创建对话框的方法都是静态方法,无须创建对象即可弹出。在日常开发中经常使用该类弹出提示、确认用户需要、调试程序等。

【18.3】代码如下:

运行结果:

2、确认框

【18.4】代码:

运行结果:

代码【18.5】

结果:

代码:【18.6】

运行结果:

4.通知匡

【18.7】代码:

运行结果:

常用布局管理器 
null 绝对布局 
    绝对布局也叫 null 布局,其特点是硬性指定组件在容器中的位置大小,组件的位置通过绝对坐标的方式来指定。使用绝对布局首先使用 Container.seLayout(null)方法取消容器的布局管理器,然后再使用 Component.setBounds(int x,int y,int width,int height)方法设置每个组件在容器中的位置和大小。

【18.8】代码:

运行如下:

FlowLayout 流布局管理器 
  流布局(FlowLayout)管理器是 Swing 中最基本的布局管理器。使用流布局管理器摆放组件时,组件被从左到右摆放。当组件占据了当前的所有空间时,溢出的组件会被移动到当前的下一行。默认情况下,行组件的排列方式会被指定为居中对齐,但是通过设置可以更改每一行组件的排序方式。

         

【18.9】代码如下:

运行结果如下:

【18.10】代码如下:

代码如下:

GridLayout 网格布局管理器       

  网格布局(GridLayout)管理器能够把容器划分为网格,组件可以按行、列进行
常用面板 JPanel 面板 【18.】

运行结果:

BorderLayout边界布局管理器
使用Swing创建窗体后,容器默认的布局管理器是边界布局管理器,边界布局管理器,把容器划分为东南西北中五个区域
BorderLayout类中的成员变量及其说明如下表所示如果使用了边界布局管理器,在向容器中添加组件时,如果不指定要把组件添加到哪个区域,那么当前组件会被默认添加到CENTER区域,如果向同一区域中添加多个组件,那么后放入的组件会覆盖先放入的组件见  add()方法被用于实现向容器中添加组件的功能,它可以设置组件的摆放位置,常用语法格式如下:public void add(Component comp,Object constraints)comp:被添加的组件
constraints:被添加组件的布局约束对象

代码如下:【18.9】

运行结果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值