java

            SWING界面开发(API文档的使用)¬¬¬

1.swing组件
构建界面的类,系统封装的类。
如果用到需引进它所在的包(打包快捷键ctrl+shift+o)
所在的包    javax.swing
               java.awt
2.常用的swing组件
1.容器组件:
JFrame(窗体) 顶级容器  (JPanel,元素组件)
JPanel(面板) 容器 (JPanel,元素组件)

2.元素组件:
JButton(按钮)//可以添加图片
JLabel(标签)//字符串,可以添加图片
JComboBox(组合框)
JPasswordField(密码输入框)
JCheckBox(复选框)
JTextField (文本输入框)

打包快捷键ctrl+shift+O

3.布局(常用)
   1)   边框布局BorderLayout
   2)   流布局FlowLayout
   3)   绝对布局 (空布局)  setLayout(null)
4.API文档的使用(eclipse的编程)
  用法:若知道类名,可以搜索到这个类,再找方法名(快捷键ctrl+F);或者根据程序的功能在网上搜索方法和类,再在API文档中查找方法说明和代码。
5.对封装的理解
   封装就是把属性和方法一起包装到一个程序单元中,并隐藏方法的实现过程,这个程序单元以类的形式实现。
  封装的含义:1)隐藏内部行为,即隐藏内部函数,调用者只能看到对外提供的公共函数
             2)隐藏内部信息,即隐藏内部数据成员
  封装的作用:1)可以隔离变化
                原因对象内部容易变化,如计算机中把CPU和内存封装起来,对外提供接口,只要接口不变,内部的变化不会影响到用户的使用方式。
             2)可以提高易用性
                封装后只暴露最少的信息给用户,对外接口清晰,使用更方便。

6.项目实例来说明
  
package swing界面;
import javax.swing.ImageIcon;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class GUI {
	
	public static void main(String[] args) {
		GUI ui = new GUI();
		//使用对象调用方法
		ui.initUI();
		}
	
	
	//定义创建界面的方法
	public void initUI(){
		//创建窗体对象
		JFrame jf = new JFrame();
		//设置标题
		jf.setTitle("QQ");
		
		//设置窗体的大小
		jf.setSize(405, 302);
		//设置默认的关闭操作
		jf.setDefaultCloseOperation(3);
		
	
		//设置窗体的布局为绝对布局
	       jf.setLayout(null);
		
		
		//实例化按钮对象
		JButton btn1 = new JButton("登录");
		//设置按钮的位置和大小
		btn1.setBounds(180, 230, 60, 30);
	     //把按钮添加到窗体上
		jf.add(btn1);
		
		
		ImageIcon image = new ImageIcon("F:\\编程图片专用\\juejian.jpg");
	    //实例化一个JLabel的标签对象,该对象现实一张图片
		JLabel j1 = new JLabel(image);
		//设置图片标签的位置
		j1.setBounds(20, 73, 100, 100);
		jf.add(j1);
		
		//新建一个ImageIcon的对象,在对象中添加一个图片的路径
		ImageIcon im = new ImageIcon("F:\\编程图片专用\\f.jpg");
		//实例化一个Button的标签对象,该对象现实一张图片
		JButton btn2 = new JButton(im);
		btn2.setBounds(38,230,41,36);
		jf.add(btn2);
		
		//新建一个ImageIcon的对象
		ImageIcon ima = new ImageIcon("F:\\编程图片专用\\s.jpg");
		JButton btn3 = new JButton(ima);
		btn3.setBounds(320,230,43,39);
		jf.add(btn3);
		
		//设置背景图片
		ImageIcon icon = new ImageIcon("F:\\编程图片专用\\bj.gif");
		//创建标签对象
		JLabel j2 = new JLabel(icon);
	    j2.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());	    
	    //把标签添加在JFrame的添加背景层	    
        jf.getLayeredPane().add(j2, new Integer(Integer.MIN_VALUE));
		//把JFrame 的上层设置为透明
		JPanel jp = (JPanel)jf.getContentPane();
		jp.setOpaque(false);
	    
	    
	   
	   	
	   	
		
		//实例化标签对象
		JLabel jl = new  JLabel("注册账户");
		JLabel jl1 = new JLabel("输入密码");
		JLabel jl2 = new JLabel("记住密码");
		JLabel jl3 = new JLabel("自动登录");
		
		//设置标签的位置和大小
		jl.setBounds(256,85, 60, 20);
		jl1.setBounds(256,115,60,20);
		jl2.setBounds(160,140,60,20);
		jl3.setBounds(230,140,60,20);
		jf.add(jl2);
		jf.add(jl3);
		jf.add(jl1);
		jf.add(jl);
		
		//实例化组合框对象
		javax.swing.JComboBox jc3 = new javax.swing.JComboBox();
		//使组合框可以输入
	    jc3.setEditable(true);	
	    //设置组合框的大小
    	jc3.setBounds(150,80,100,20);
		jf.add(jc3);
		
		
		//创建密码输入框
		javax.swing.JPasswordField jp1=new javax.swing.JPasswordField();
		jp1.setBounds(150,110,100,20);
		jf.add(jp1);
		
		//创建复选框
		javax.swing.JCheckBox jc1=new javax.swing.JCheckBox();
		javax.swing.JCheckBox jc2=new javax.swing.JCheckBox();
		jc1.setBounds(140,145,16,15);
		jc2.setBounds(214,145,16,15);
		jf.add(jc2);
		jf.add(jc1);
		
		//使窗体可见
		jf.setVisible(true);
	}

}

java
简单计算器
 
package 简单登录界面;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class GUI {
	public static void main(String args[]){
		GUI ui=new GUI();
		ui.initUI();
	}
	
      public void initUI(){   
        //创建一个窗体对象
	     JFrame jf=new JFrame("计算器");
	     //设置窗体的大小
	     jf.setSize(new Dimension(370,390));
	     //设置关闭时的操作
	     jf.setDefaultCloseOperation(3);
	     //设置窗体出现的位置为屏幕的中间
		 jf.setLocationRelativeTo(null);
		 
		 //创建菜单栏对象
		 JMenuBar menuBar = new JMenuBar();
		 //把菜单栏添加在菜单上
		 jf.setJMenuBar(menuBar);
		 
		 //创建菜单对象
		 JMenu menuV= new JMenu("查看(V)");
		 JMenu menuE = new JMenu("编辑(E)");
		 JMenu menuH = new JMenu("帮助(H)");
		 //把菜单添加在菜单栏上
		 menuBar.add(menuV);
		 menuBar.add(menuE);
		 menuBar.add(menuH);
		 
		 //这个菜单为menuV的下一级菜单
		 JMenu menuVw= new JMenu("工作表(W)");
		 menuV.add(menuVw);
		 
		 //创建menuVw的菜单项
		 String array1 []={"抵押(M)","汽车租赁(V)","油耗(mpg)(F)",
				 "油耗(1/100km)(U)"};
		 for(int i=0;i<array1.length;i++){
			 JMenuItem itemW= new JMenuItem(array1[i]);
			 menuVw.add(itemW);
		 }
		 
		 //把数组存放菜单项,用循环语句创建菜单项对象
		 String array2 []={"标准型(T)  Alt+1","科学型(S)  Alt+2",
				 "程序员(P)  Alt+3","统计信息(A)  Alt+4","历史记录    ctrl+N",
				 "数字分组(I)","基本(B)  ctrl+f4","单位转换(U) ctrl+U",
		 		"日期计算(D)  ctrl+E"};
		 for(int j=0;j<array2.length;j++){
			 JMenuItem itemV= new JMenuItem(array2[j]);
			 menuV.add(itemV);	 
		 }
		 
		 //创建menuE的菜单项
		 JMenuItem C = new JMenuItem("复制    ctrl+C");
		 JMenuItem V =new  JMenuItem  ("粘贴    ctrl+V");
		 JMenuItem N= new JMenuItem("历史记录    ctrl+N");
		 menuE.add(C);
		 menuE.add(V);
		 menuE.add(N);
		 
		 //创建menuH的菜单项
		 JMenuItem F1 = new JMenuItem("关于帮助(V) F1");
	     JMenuItem A1 = new JMenuItem("关于计算器(A)");		 
		 menuH.add(F1);
		 menuH.add(A1);
		 
		 
		 /**
		  * 窗体默认的布局为边框布局
		  * 用面板把窗体分为北,西,东三部分
		  * 北边面板放文本输入框
		  * 西边和东边采用流布局添加按钮
		  * 面板默认的布局方式为流布局
		  * 用数组存放按钮,for循环创建对象
		  * 和其他按钮的大小不同的用if条件语句判断
		  */
		 JPanel jpNorth = new JPanel ();
		 JPanel jpWest  =  new JPanel ();
		 JPanel jpEast  =  new JPanel ();
		 jpNorth.setPreferredSize(new Dimension(0,70));
		 jpEast.setPreferredSize(new Dimension(85,0));
		 jpWest.setPreferredSize(new Dimension(285,0));
		 
		//东边面板流布局,左对齐,每个按钮之间的水平距离和竖直距离 
		 jpEast.setLayout(new FlowLayout(FlowLayout.RIGHT,0,6));
		  //西边面板流布局,左对齐,每个按钮之间的水平距离和竖直距离
		 jpWest.setLayout(new FlowLayout(FlowLayout.LEFT,9,6));
		 jf.add(jpNorth,BorderLayout.NORTH);
		 jf.add(jpWest,BorderLayout.WEST);
		 jf.add(jpEast,BorderLayout.EAST);
		 
		 
		 
		 //创建文本输入框对象
		 JTextField jt=new JTextField();
		 jt.setPreferredSize(new Dimension(340,80));
		 jpNorth.add(jt);
		 
		 //创建东边面板上按钮的对象
		 String array3[]={"M-","√","%","1/x","=", };
		 for(int k=0;k<array3.length;k++){
			 JButton buttonE=new JButton(array3[k]);
			 if(k<4){
				 buttonE.setPreferredSize(new Dimension(62,35));
			 }
			 else{
				 buttonE.setPreferredSize(new Dimension(62,75));
			 }
			 jpEast.add(buttonE);
		 }
		//创建西边面板上 按钮的对象
		 String array4[]={"MC","MR","MS","M+"," ","CE","C","±",
				 "7","8","9", "/","4","5","6","*","1","2","3",
				 "-","0",".","+"};
				 
		 for(int m=0;m<array4.length;m++){
			 JButton buttonW=new JButton(array4[m]);
		     if(m==20){
		    	 buttonW.setPreferredSize(new Dimension(130,35));
		     }
		     else{
		    	 buttonW.setPreferredSize(new Dimension(62,35)); 
		     }
		     jpWest.add(buttonW);
		 }
		 //使窗体显现出来
		  jf.setVisible(true);
      }
	

}
 

运行结果
java

你可能感兴趣的:(简单计算器,swing界面,QQ登录界面)