Swing-学生信息管理系统之查找学生信息

想要下载完整程序请移步:
https://download.csdn.net/download/ancientear/10550004
上次写的是登陆界面,登陆进去是有好几个功能的,添加,修改,删除,查询。

该文就先介绍下查找。

运行出来的界面是怎么样的呢?
Swing-学生信息管理系统之查找学生信息_第1张图片

Swing-学生信息管理系统之查找学生信息_第2张图片

Swing-学生信息管理系统之查找学生信息_第3张图片

在这里,只要输入学号就可以出现该学生的所有信息。在学生信息出现界面,还可以进行修改学生信息,本文主要是实现查找功能。

package com.sys.view;

import javax.swing.JDialog;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JTextField;

import com.sys.control.DiaListener;
import com.sys.control.FindListener;
import com.sys.control.TableListener;
import com.sys.control.UpdateListener;
import com.sys.data.StaticData;

import javax.swing.JDialog;

/*JDialog窗体是Swing组件中的对话框
JDialog窗体的功能是从一个窗体中弹出另一个窗体*/

import javax.swing.JDialog;
public class FindDialog extends JDialog{
	
	//JLabel 对象可以显示文本
	private JLabel id,name,sex,age,academy,address;
	public static JLabel err;
	public static JTextField t_id,t_name,t_sex,t_age,t_academy,t_address;
	private JButton ok,cancle;//定义两个按钮
	public static JComboBox cb_sex,cb_ac;//定义下拉菜单控件
	
	public FindDialog(){
		this.setAlwaysOnTop(true);//置顶
		this.setTitle("查找学生信息");//给顶部框加入字
		this.setLayout(null);//用户界面上的屏幕组件的格式布局
		this.setSize(580, 320);//定义这个查找弹窗的大小
		this.setLocationRelativeTo(null);//设置窗口相对于指定组件的位置,null代表的是居中
		int index = ManagerJpanel.jt.getSelectedRow();
	 

		
		//从StaticData.java中获取汉字内容并在此定义为标签,方便后续使用
		id = new JLabel(StaticData.S_ID+":");
		name = new JLabel(StaticData.S_NAME+":");
		sex = new JLabel(StaticData.S_SEX+":");
		age = new JLabel(StaticData.S_CLASS+":");
		academy = new JLabel(StaticData.S_ACADEMY+":");
		address = new JLabel(StaticData.S_address+":");
		
		
		err = new JLabel();
		t_age = new JTextField();
		t_id = new JTextField();
		t_name = new JTextField();
		t_address = new JTextField();
		cb_sex = new JComboBox();
		cb_ac = new JComboBox();
		
		
		ok = new JButton("查找");
		cancle = new JButton("取消");
		
		
		cb_sex.addItem("男");
		cb_sex.addItem("女");
		
		//把汉字的位置固定好
		
		/* setBounds(x,y,width,height)
		 *  x:组件在容器X轴上的起点 
		 * y:组件在容器Y轴上的起点 
		 * width:组件的长度 
		 * height:组件的高度
*/
		id.setBounds(30, 50, 30, 30);
		t_id.setBounds(80, 50, 100, 30);
		name.setBounds(200, 50, 30, 30);
		t_name.setBounds(250, 50, 100, 30);
		sex.setBounds(370, 50, 30, 30);
		cb_sex.setBounds(420, 50, 100, 30);
		
		//定义汉字后的提示框的位置
		age.setBounds(30, 100, 30, 30);
		t_age.setBounds(80, 100, 100, 30);
		academy.setBounds(200, 100, 30, 30);
		cb_ac.setBounds(250, 100, 100, 30);
		address.setBounds(370,100,30,30);
		t_address.setBounds(420,100,100,30);
		
		
 //在组合框或列表框中添加一个新数据项,并且可以指定数据项索引。
			cb_ac.addItem("计算机学院");
			cb_ac.addItem("经济管理学院");
			cb_ac.addItem("艺术学院");
			cb_ac.addItem("外国语学院");
			cb_ac.addItem("海洋学院");
			cb_ac.addItem("电信学院");
			cb_ac.addItem("机械学院");
		 
		err.setBounds(30, 150, 120, 30);
		err.setForeground(Color.RED);//设置前景色(在查询不到学生的时候,会出现红色提示)
		
		//在这里定义查找、取消的两个按钮位置
		ok.setBounds(250, 200, 100, 30);
		cancle.setBounds(350, 200, 100, 30);		
		
		
		ok.addActionListener(new FindListener());
		
		
		cancle.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				TableListener.jd_u.dispose();
				 
			}
		});
		
		
		
		
		
		
		add(id);
		add(t_id);
		add(name);
		add(t_name);
		add(sex);
		add(cb_sex);
		add(age);
		add(t_age);
		add(academy);
		add(address);
		add(t_address);
		add(cb_ac);
		add(err);
		add(ok);
		//add(cancle);不知道哪里出了问题,这里的取消按钮一直出问题,就不弄这个了
		setVisible(true);
	}
}

点击查找后,应该怎么去处理输入的学号或其他信息呢?

Swing-学生信息管理系统之查找学生信息_第4张图片

package com.sys.control;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JDialog;


import com.sys.view.FindDialog;
import com.sys.view.ManagerJpanel;
import com.sys.view.QueryJDialog;

public class FindListener implements ActionListener{
	private JDialog err,masg;
	
	public void actionPerformed(ActionEvent e) {
		int index = ManagerJpanel.jt.getSelectedRow();
		String id = FindDialog.t_id.getText();//从id的输入框中得到文本信息

		if(id.equals("")){
			FindDialog.err.setText("学号不能为空!");
		}else{
		
			int count  =  ManagerJpanel.jt.getRowCount();//得到目前的学生信息的个数
			
			for(int i=0;i

你可能感兴趣的:(#,!,★---)