⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stuinfor.java

📁 这是一个关于java界面编程的例子
💻 JAVA
字号:

import javax.swing.*;
import javax.swing.event.*;

import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.io.*;
import javax.swing.tree.*;
import javax.swing.table.*;


public  class StuInfor extends JFrame implements ActionListener{
	
	//变量声明
	JLabel labName;
	JLabel labPass;
	JLabel labSex;
	JLabel labPar;
	JLabel labAge;
	JLabel labGra;
	JLabel labTex;
	JLabel labRes;
	JLabel labTit;
	
	
    JButton butCol;
	JButton butPic;
    JButton panePic;
    JButton butAdd;
    JButton count,exit0;
    
    JToolBar tb;
	
	JTextField      texName;
	JPasswordField  pass;
	
	JRadioButton    man;
	JRadioButton    woman;
	
	JCheckBox       chePar0;
	JCheckBox       chePar1;
	
	JSpinner        spiAge;
	
	JComboBox       comGra;
	
	JTextArea       texAreRes;
	
	JPanel          paneStu,paneSex,panePar;
    
	
	
	
	JTable          tabStu;

//	Object value[][];
	
	ButtonGroup radGroup;
	ButtonGroup cheGroup;
	
	Box          p0,p1,p2,p3,p4,p5,p6,p7,p8,p9;
	Box             baseBox;
	Box             topBox;
	Box             leftBox;
	Box             bottomBox;
	Box             endBox;
	Box             rightBox;
	Box             startBox;
	Box             all;
	Box             menuBox;
	JSplitPane      split0;
	JSplitPane      split1;
	
	JScrollPane     scrop;

	Container con;
	Color color;
	String picDir;
	Icon icon;
	
	//构造方法	
	public StuInfor(){
		
		super("学生基本信息");
	    con=getContentPane();
	    
	    setVisible(true);
	    
	    JMenuBar bar=new JMenuBar();
	    JMenu menuSys=new JMenu("系统");
	    JMenuItem itemShowHide=new JMenuItem("显示/隐藏工具条");
	    JMenuItem itemCount=new JMenuItem("统计人数");
	    JMenuItem itemExit=new JMenuItem("推出");
	    itemExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.ALT_MASK));
	    
	     itemExit.addActionListener
        (
            new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    StuInfor.this.windowClosed();
                }
            }
        ); 
	    
	    menuSys.add(itemShowHide);
	    menuSys.add(itemCount);
	    menuSys.add(itemExit);
	    bar.add(menuSys);
	   
	   
	    menuBox=Box.createHorizontalBox();
		baseBox=Box.createVerticalBox();
		startBox=Box.createHorizontalBox();
		topBox=Box.createHorizontalBox();
		leftBox=Box.createVerticalBox();
		bottomBox=Box.createVerticalBox();
		endBox=Box.createHorizontalBox();
		rightBox=Box.createVerticalBox();
		
		all=Box.createVerticalBox();
		
		paneStu=new JPanel();
		p0=Box.createHorizontalBox();
		p1=Box.createHorizontalBox();
		p2=Box.createHorizontalBox();
		p3=Box.createHorizontalBox();
		p4=Box.createHorizontalBox();
		p5=Box.createHorizontalBox();
		p6=Box.createHorizontalBox();
		p7=Box.createHorizontalBox();
		p8=Box.createHorizontalBox();
		p9=Box.createHorizontalBox();
		paneStu.setLayout(new GridLayout(8,2));
		
		labTit=new JLabel("学生基本信息");
	    labName=new JLabel("姓名",JLabel.LEFT);
	    
        labPass=new JLabel("密码",JLabel.LEFT);
        labSex=new JLabel("性别",JLabel.LEFT);
        
        labPar=new JLabel("党否",JLabel.LEFT);
        labAge=new JLabel("年龄",JLabel.LEFT);
        labGra=new JLabel("年级",JLabel.LEFT);
       
        labRes=new JLabel("简历",labRes.LEFT);
        
        butCol=new JButton(" 选择颜色...");
        
        butAdd=new JButton("添加");
        butCol.addActionListener(this);
        butPic=new JButton("选择照片...");
        count=new JButton("统计人数");
        exit0=new JButton("退出");
       
        butPic.addActionListener(this);
        panePic=new JButton("显示路径");
                
        texName =new JTextField(20);
        
        //texName.reSi
        pass=new JPasswordField(20);
        
        man=new JRadioButton("男",true);
        woman=new JRadioButton("女");
        
        radGroup=new ButtonGroup();
        radGroup.add(man);
        radGroup.add(woman);
        
        chePar0=new JCheckBox("是",false);
        chePar1=new JCheckBox("否",true);
        
        cheGroup=new ButtonGroup();
        cheGroup.add(chePar0);
        cheGroup.add(chePar1);
        
        spiAge=new JSpinner();
        spiAge.setValue(new Integer(20));
            
        comGra=new JComboBox();
        comGra.addItem("一年级");
        comGra.addItem("二年级");
        comGra.addItem("三年级");
        comGra.addItem("四年级");
        
        tb=new JToolBar();
        tb.add(count);
        tb.add(exit0);
        tb.setFloatable(false);
        texAreRes=new JTextArea(4,10);
        scrop=new JScrollPane(texAreRes);
       
        
        Object field[]={"姓名","密码","性别","党否","年龄","年级","简历","颜色","照片"};
        Object value[][]=new Object[4][9];
        for(int i=0;i<4;i++){
        	for(int j=0;j<9;j++){
        		value[i][j]="null";
        	}
        }
        tabStu=new JTable(value,field);
        //tabStu.repaint();
        tabStu.setShowGrid(true);
        paneSex=new JPanel();
        paneSex.add(man);
        paneSex.add(woman);
        paneSex.setBorder(BorderFactory.createLineBorder(Color.gray,2));
        
        panePar=new JPanel();
       
        panePar.add(chePar0);
        panePar.add(chePar1);
        panePar.setBorder(BorderFactory.createLineBorder(Color.gray,2));
    
        
        p0.add(labName);
        p0.add(Box.createHorizontalStrut(8));
        p0.add(texName);
        p0.add(Box.createHorizontalGlue());
        p1.add(labPass);
        p1.add(Box.createHorizontalStrut(8));
        p1.add(pass);
        p1.add(Box.createHorizontalGlue());
        p2.add(labSex);
        p2.add(Box.createHorizontalStrut(8));
        p2.add(paneSex);
        //p2.add(woman);
        p2.add(Box.createHorizontalGlue());
        p3.add(labPar);
        p3.add(Box.createHorizontalStrut(8));
        p3.add(panePar);
        //p3.add(chePar1);
        p3.add(Box.createHorizontalGlue());
        p4.add(labAge);
        p4.add(Box.createHorizontalStrut(8));
        p4.add(spiAge);
        p4.add(Box.createHorizontalGlue());
        p5.add(labGra);
        p5.add(Box.createHorizontalStrut(8));
        p5.add(comGra);
        p5.add(Box.createHorizontalGlue());
        p6.add(labRes);
        p6.add(Box.createHorizontalStrut(8));
        p6.add(scrop);
        p6.add(Box.createHorizontalGlue());
        p7.add(butCol);
        p7.add(Box.createHorizontalGlue());
        p8.add(butPic);
        p6.add(Box.createHorizontalStrut(8));
        p8.add(panePic);
        p8.add(Box.createHorizontalGlue());
        p9.add(butAdd);
        p9.add(Box.createHorizontalGlue());
        //p9.add(panePic);
      //  p9.add(Box.createHorizontalGlue());
        
        
        //leftBox.add(labTit);
        startBox.add(tb);
        startBox.add(Box.createHorizontalGlue());
        //startBox.add(labTit);
        leftBox.add(p0);
        leftBox.add(Box.createVerticalStrut(8));
        
        leftBox.add(p1);
        leftBox.add(Box.createVerticalStrut(8));
        
        leftBox.add(p2);
        leftBox.add(Box.createVerticalStrut(8));
         
        leftBox.add(p3);
        leftBox.add(Box.createVerticalStrut(8)); 
        
        leftBox.add(p4);
        leftBox.add(Box.createVerticalStrut(8));  
        leftBox.add(p5);
        leftBox.add(Box.createVerticalStrut(8));
      
        leftBox.add(p6);
        leftBox.add(Box.createVerticalStrut(8));  
        
        rightBox.add(p7);
        rightBox.add(Box.createVerticalStrut(8));
        
        rightBox.add(p8);
        rightBox.add(Box.createVerticalStrut(8));
        rightBox.add(p9);
        rightBox.add(Box.createVerticalGlue());
        
        bottomBox.add(tabStu);
        bottomBox.add(endBox);
     
      
     
        
       
        
        Timers time=new Timers();
              
        endBox.add(time);
        
      
        split0=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true,leftBox,rightBox);
        split1=new JSplitPane(JSplitPane.VERTICAL_SPLIT,true,split0,bottomBox);
             
        //baseBox.add(split1);
        //all.add(startBox);
        
        //all.add(baseBox);
     
        //con.add(bar,BorderLayout.NORTH);
        menuBox.add(bar);
        menuBox.add(Box.createHorizontalGlue());
        all.add(menuBox);
        all.add(tb);
        all.add(split1);
        con.add(all);
        //con.add(split1);
        con.validate();
        
 
		
	}

 protected void windowClosed() {
    	
    	// TODO: Check if it is safe to close the application
    	
        // Exit application.
        System.exit(0);
 }	

public void actionPerformed(ActionEvent e)
{
	Object source=e.getSource();
	
	if(source==butCol){
	
	     Choosers2();
	     setColor();    
	}
	if(source==butPic){

	  operating();
	  setPicture();
		
	}
	
}

public void Choosers2()
	{   
	
		 color=JColorChooser.showDialog(null,"Color Chooser",new Color(0,0,255));
	
	}
public void setColor(){
	
	   butCol.setBackground(color);
}  

public void operating()
	{
		JFileChooser fc=new JFileChooser();
		fc.setMultiSelectionEnabled(true);
		fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
		int ret=fc.showDialog(null,"选择");
		if (ret==JFileChooser.APPROVE_OPTION)
		{
			File dir=fc.getCurrentDirectory();
			File file=fc.getSelectedFile();
		    picDir=dir.getAbsolutePath()+"\\"+ file.getName();
		    picDir=picDir.replace('\\','/');
			
		}
	
	}
	
public void setPicture(){
	
	
		panePic.setText(picDir);
	}  




 public static void main(String args[]){
	
	StuInfor si=new StuInfor();

	si.setExtendedState(MAXIMIZED_BOTH);

	
	
}
}
class Timers extends JPanel implements ActionListener
{
	javax.swing.Timer timer;
	JLabel dispt;
	
	Timers()
	{
	
		timer=new javax.swing.Timer(1000,this);
		Font f=new Font("黑体",Font.BOLD,36);
		dispt=new JLabel();
		dispt.setHorizontalAlignment(JLabel.CENTER);
		dispt.setFont(f);
		dispt.setForeground(Color.RED);
	
	    add(dispt);
		
		timer.start();
	}
	
	public void actionPerformed(ActionEvent e)
	{
		dispt.setText(new Date().toString());
	}
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -