Swing编程初级应用

本文介绍了Swing编程的基础知识,包括如何创建第一个窗体、窗体子类的创建以及注意事项,强调了JFrame的可见性和大小设置。此外,还探讨了布局管理器的使用,如FlowLayout、GridLayout和BorderLayout,并提醒了布局为null时需手动设置控件坐标。文章列举了Swing常用组件,如JLabel、JButton、JTextField等,并指出在Panel中设置布局对控件排列的影响。最后提到了下拉列表和单复选按钮的应用。
摘要由CSDN通过智能技术生成

10.1 Swing中如何创建第一个窗体

Swing(轻量级的图形界面组件):是以AWT平台为基础构建起来的新组件与AWT相比,Swing组件在实现时不包括任何依赖特定平台的代码,因此具有更高的平台无关性和良好的移植性,所以Swing成为图形用户界面开发的首选
1.注意事项
这里虽然关闭了窗体,不代表结束了整个程序,所以还要从控制台去结束,需要加入设置代码,一般会在软件的主界面加入。
2.窗体子类的创建
不同的窗体具有不同的功能和特性,所以一般使用时会创建窗体类继承JFrame类,从而扩展它。
3.注意事项
代码中的文件路经,注意反斜杠\需要加入2个,因为一个具有特殊含义,需要转义一下。
4.知识要点
SWING中JFRAME的使用需要注意:
(1)JFrame类构造方法创建的窗体是不可见的,需要开发人员通过硬编码的方式,设置窗体的可见性。
(2)JFrame类构造方法创建的窗体默认的大小为0×0像素,也就是没有大小,默认的坐标是(0,0)就是屏幕的左上角。
应用1:

package com.frame;



import javax.swing.ImageIcon;
import javax.swing.JFrame;

public class MianFrame extends JFrame{
public MianFrame() {
	this.setTitle("主窗体");
	this.setSize(500, 400);
	this.setLocation(200, 300);
	this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	ImageIcon icon=new ImageIcon("C:\\Users\\123\\Pictures\\Camera Roll\\2018022816064949211.JPG");
	this.setIconImage(icon.getImage());
	this.setResizable(false);
	
}
}
package com.frame;

public class Test1 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
        MianFrame m1=new MianFrame();
        m1.setVisible(true);
	}

}

10.2 布局管理器的使用
1.知识要点
SWING布局管理器的使用:
常用的布局管理器:FlowLayout流式布局管理器、GridLayout网格布局管理器、BorderLayout边框布局管理器。
2.注意事项
不同的布局方式,界面中的控件会按照不同的方式摆放。
10.3 swing常用组件的使用
1.知识要点
SWING常用组件主要包含:
(1)文本——JLabel
(2)按钮——JButton
(3)文本框——JTextField
(4)密码框——JPasswordField
(5)面板——JPanel
(6)下拉框——JComboBox
(7)单选按钮——JRadioButton
(8)复选框——JCheckBox
2.注意事项
把布局方式设置为null,所有添加到界面上的控件必须设置坐标,否则显示不正常。
3.注意事项
Panel代表一个容器,它里面的按钮如果要水平排列,则需要设置Panel的布局方式。
应用3


```java
package com.frame;

import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class RegisterFrame extends JFrame{
	JPanel panel1,panel2;
	JLabel label1,label2,label3;
	JTextField jf1,jf2,jf3;
	JButton btn1,btn2;
public RegisterFrame() {
	this.setTitle("注册");
	this.setBounds(200, 200, 400, 200);
	this.setResizable(false);
	this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	this.setLayout(new BorderLayout());
	panel1=new JPanel();
	panel2=new JPanel();
	this.add(panel1,BorderLayout.CENTER);
	panel1.setLayout(new GridLayout(3, 2, 20, 30));
	label1=new JLabel("姓名");
	label1.setHorizontalAlignment(JLabel.CENTER);
	jf1=new JTextField(15);
	label2=new JLabel("性别");
	label2.setHorizontalAlignment(JLabel.CENTER);
	jf2=new JTextField(15);
	label3=new JLabel("年龄");
	label3.setHorizontalAlignment(JLabel.CENTER);
	jf3=new JTextField(15);
	panel1.add(label1);
	panel1.add(jf1);
	panel1.add(label2);
	panel1.add(jf2);
	panel1.add(label3);
	panel1.add(jf3);
	this.add(panel2,BorderLayout.SOUTH);
	panel2.setLayout(new FlowLayout(FlowLayout.CENTER));
	btn1=new JButton("确定");
	btn2=new JButton("取消");
	panel2.add(btn1);
	panel2.add(btn2);
	
	
}

}
package com.frame;

public class Test3 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
       RegisterFrame r1=new RegisterFrame();
       r1.setVisible(true);
	}

}

10.4 下拉列表,单复选按钮的使用
注意事项
将数据放入combox下拉框中,combox放入Panel中,最后将Panel放入界面中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值