swing编程初级运用
Posted XWxjl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swing编程初级运用相关的知识,希望对你有一定的参考价值。
1.Swing 介绍
Swing 是一个为Java设计的GUI( Graphical User Interface,图形用户界面)工具包。
Swing由纯Java实现,不再依赖于本地平台的GUI,因此可以在所有操作系统平台上都保持相同的界面外观。
独立于本平台的Swing组件称为轻量级组件。
Swing组件位于javax.swing包。
Swing组件采用MVC(Model-View-Controller,即模型-视图-控制器)的设计模式,其中模型用于维护各种状态,视图是组件可视化的表现,控制器用于对各种事件、组件做出相应的响应。当模型发生改变时,它会通知所有依赖它的视图,视图会根据模型数据进行更新。
2 .JFrame窗口容器引用
GUI应用程序都需要使用窗体作为最外层的容器,应用中需要使用的其他控件均直接或间接放在窗体中。
在Swing GUI中,JFrame是一个顶层容器,可以存放其他组件。
JFrame类包含了许多实用方法,如定义窗口标题、窗体边框、窗口的大小和位置等。通常通过继承JFrame类来创建一个窗口。
创建窗体的两种方式:
直接编写代码,调用JFrame类的构造方法,这种方式适用于窗体简单的情况。
继承JFrame类。在继承的类中编写代码,对窗体进行详细的描述,这种方式适用于窗体较复杂的情况。
注意:
JFrame类构造方法创建的窗体是不可见的,需要开发人员通过硬编码的方式,设置窗体的可见性。
JFrame类构造方法创建的窗体默认的大小为0 x 0像素,默认的坐标是(0,0),因此在开发中需要设置窗体的大小。
创建JFrame窗体
public class JFrameExample {
public void init(){
//创建窗体对象
JFrame frame=new JFrame();
//修改窗体图标为“android.gif”
ImageIcon ico=new ImageIcon("E://android.gif");
//设置JFrame窗体的显示位置和大小
frame.setBounds(100,100, 450, 300);
//设置窗体的标题
frame.setTitle("JFrame窗体");
//设置窗体的图标
frame.setIconImage(ico.getImage());
//窗体显示
frame.setVisible(true);
}
public static void main(String[] args) {
JFrameExample jfe=new JFrameExample();
jfe.init();
}
}
FlowLayout流式布局管理器
1.类似流程或文本处理器处理一段文字,它将组件一排一排依次放置。
2.常用于JRadioButton单选按钮或JCheckBox复选框等组件的排列。
构造方法 | 说明 |
FlowLayout() | 使用居中方式构造FlowLayout的布局 |
FlowLayout(int align) | 使用给定对齐方式,且垂直和水平间隔为5个像素。 例如,setLayout(new FlowLayout(FlowLayout.LEFT)); |
FlowLayout(int align,int hgap,int vgap) | 使用给定对齐方式,且指定垂直和水平间隔。容器默认居中放置。hgap和vgap为组件之间垂直和水平间隔(单位为像素)。 例如,setLayout(new FlowLayout(FlowLayout.RIGHT,20,40)); |
GridLayout网格布局管理器
网格布局管理器即GridLayout布局管理,其布局管理格式是将窗体分割成行数×列数的格子状版面,组件按照由左至右,由上而下的次序排列。
构造方法 | 说明 |
GridLayout | 构造具有一行一列的Gridlayout的布局 |
GridLayout(int rows,int cloumns) | 构造指定行数和列数的GridLayout的布局 |
GridLayout(int rows, int cloumns,int hgap,int vgap) | 构造指定行数和列数的、各组件之间的相互间隔的GridLayout的布局 |
BoraderLayout边框布局管理器
BorderLayout的布局管理器将容器内的空间分为东、西、南、北、中5个区域,分别用EAST、WEST、SOUTH、NORTH、CENTER表示。
向容器中加入每个组件时,都要指明其放在容器的哪个区域,如果某个区域没有分配组件,则其他组件可以占据该区域的控件
构造方法 | 说明 |
BorderLayout() | 构造BorderLayout的布局 |
BorderLayout(int hgap,int vgap) | 构造组件之间具有指定间隔的BorderLayout布局 |
总结:
Swing是一个为Java设计的GUI( Graphical User Interface,图形用户界面)工具包,它由纯Java实现,不再依赖于本地平台的GUI,因此可以在所有操作系统平台上都保持相同的界面外观。Swing组件为轻量级组件。
JFrame是一个顶层容器,可以存放其他组件。
常见的布局管理器
FlowLayout流式布局管理器:类似流程或文本处理器处理一段文字,它将组件一排一排依次放置。
GridLayout网格布局管理器:其布局管理格式是将窗体分割成行数×列数的格子状版面,组件按照由左至右,由上而下的次序排列。
和BorderLayout边框布局管理器:将容器内的空间分为东、西、南、北、中5个区域,分别用EAST、WEST、SOUTH、NORTH、CENTER表示。
Swing常用组件有JLabel标签、JTextField文本、JPasswordField密码、JButton按钮、JPanel面板、JComboBox选择框、JRadioButton单选按钮、JCheckBox复选框。
使用JRadioButton组件,首先需要创建ButtonGroup对象,然后将创建的JRadioButton组件对象,添加至ButtonGroup对象中。
以上是关于swing编程初级运用的主要内容,如果未能解决你的问题,请参考以下文章
教你一招让你在机房成为最亮的仔(Java中的Swing编程初级应用)