对swing界面开发的个人理解

java图形界面一般需要两个包灵活使用,一个是java.awt,另外一个是java.swing.

 

常用的组件:
 1.常用的容器(可以往内加东西的就是容器)
 JFrame(窗体类),是顶级容器,最大的,所有的东西都可以网上加.可以理解为一个大窗户
 JPanel(面板类),是最灵活的容器,她可大可小.那么便是大窗户里的那些一个一个组成的玻璃板,
 JMenuBar(菜单栏),JMenu(菜单项),等等
 
 2.常用的元素组件(不能往里面加内容)
 JLabel 标签类
 JButton 按钮类
 
 JComboBox 下拉框类
 JPasswordField 密码输入框
 JTextField 编辑框类
 JMenuItem 菜单项类
 (一般带有"J"的都在java.swing包下)
 
 3.常用的布局
 BoderLayout  边框布局 (窗体的布局是边框布局,在没有指定显示位置的情况下,都会往中间去加)
 FlowLayout  流式布局 (面板的布局是流式布局)
 GridLayout  网格布局

 所有以Layout结尾的类都是布局类。
 
界面实现:
 实现界面的步骤:
  (1)定义类,在类中定义主函数和初始化界面的方法
  (2)在初始化界面的方法中,实例化一个JFrame窗体类的对象
  (3)设置窗体对象的属性(大小,标题,显示位置,窗口关闭时退出程序,禁止改变窗体大小,窗体可见)
  (4)实例化布局对象并且设置窗体容器的布局方式
  (5)实例化容器或者元素组件的对象,然后让对象添加到窗体上(标签)
  (6)在主函数中实例化类的对象,然后调用初始化界面的方法
 
 下面用一段简单的代码实现一个小小计算器的界面:

import java.awt.BorderLayout;//边框布局类
import java.awt.Color;//颜色类
import java.awt.Dimension;

import javax.swing.JButton;//按钮类
import javax.swing.JFrame;//窗体类
import javax.swing.JPanel;//面板类
import javax.swing.JTextField;//编辑框类

public class Calculator {

	//程序的入口主函数
	public static void main(String [] args) {
		//实例化一个计算器对象
		Calculator calculator = new Calculator();
		calculator.initUI();
		
	}
	
	int i ;
	//创建一个全局变量,储存字符
	private String[] name = {"C","=","7","8","9","+","4","5","6","-","1","2","3","*","0",".","/"};
	//定义一个按钮数组
	JButton jb[] = new JButton[27];
	
	//方法:initUI
	public void initUI(){
		
		
		//实例化一个JFrame窗体对象
		JFrame jf = new JFrame();
		jf.setSize(196,242);//设置大小
		jf.setLocation(100, 100);//设置显示位置
		jf.setTitle("Calculator");//设置标题
		jf.setDefaultCloseOperation(3);//设置关闭窗口时退出程序
		jf.setResizable(false);//设置禁止改变窗口大小
		
		BorderLayout bd = new BorderLayout();//实例化一个边框布局
		jf.setLayout(bd);//设置窗体的布局为边框布局
		
		JTextField jt = new JTextField("0");//实例化一个编辑框类
		jt.setPreferredSize(new Dimension(140,50));//设置编辑框的大小
		jt.setHorizontalAlignment(JTextField.RIGHT); // 文本右对齐
		jt.setBackground(Color.WHITE);//设置编辑框背景为白色
		jt.setEditable(false);//设置编辑框不可编辑
		jf.add(jt,BorderLayout.NORTH);
		
		
		JPanel panel = new JPanel();//实例化一个面板对象
		
		//使用循环来添加按钮
		for(i = 0; i <= 16; i++){
			jb[i] = new JButton(name[i]);//创建每一个按钮
			panel.add(jb[i]);//将按钮添加到面板上
			jb[i].setPreferredSize(new Dimension(41,26));//设置每一个按钮的大小
			if(i == 0){
				jb[i].setPreferredSize(new Dimension(132,26));//特别设置“C”按钮的大小
			}
			if(i == 14){
				jb[i].setPreferredSize(new Dimension(86,26));//特别设置“0”按钮的大小
			}
//			NumberListener a = new NumberListener(jt,jb[i]);//实例化事件处理类的对象
//			jb[i].addActionListener(a);//将监听器添加到按钮上
		}
		
		jf.add(panel,BorderLayout.CENTER);//将面板加到窗体的中间
		
		jf.setVisible(true);//设置窗口可见
		
	}
	

}

 

 下面便是小小计算器的界面了:



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值