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

📄 stinf.java

📁 一个简单的学生信息管理系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
import javax.swing.*;
import java.awt.*;
//import com.borland.jbcl.layout.*;
import java.awt.event.*;
import java.sql.*;

//建立登陆窗口
/*class FrameLoad extends JFrame
{
 public FrameLoad()
 {
	super("学员信息管理器");
	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	setResizable(false);
	setSize(250,150);
	setBackground(Color.green);
 }
}


//添加登陆面板
class PanelLoad extends FrameLoad
{
 JPanel panel1,panel2;
 JLabel labelnameload,labelpasswd;
 JTextField textfieldnameload;
 JPasswordField passwdfield;
 JButton buttonload,buttonexit;
 public PanelLoad()
 {
	panel1=new JPanel();
	panel1.setBackground(Color.green);
	labelnameload=new JLabel("用户名:");
	labelpasswd=new JLabel("密码:");
	textfieldnameload=new JTextField(5);
	passwdfield=new JPasswordField(8);
	panel1.add(labelnameload);
	panel1.add(labelpasswd);
	panel1.add(passwdfield);
	panel1.add(textfieldnameload);
	GridBagLayout gbl=new GridBagLayout();
	GridBagConstraints gbc=new GridBagConstraints();
	panel1.setLayout(gbl);
	gbc.weightx=1.0;
	gbc.weighty=1.0;
	gbc.gridx=0;
	gbc.gridy=0;
	gbl.setConstraints(labelnameload,gbc);
	gbc.gridy=1;
	gbl.setConstraints(labelpasswd,gbc);
	gbc.anchor=GridBagConstraints.WEST;
	gbc.gridx=1;
	gbc.gridy=0;
	gbl.setConstraints(textfieldnameload,gbc);
	gbc.gridy=1;
	gbl.setConstraints(passwdfield,gbc);
	panel2=new JPanel(new FlowLayout(FlowLayout.RIGHT,10,10));
	panel2.setBackground(Color.green);
	buttonload=new JButton("登陆");
	buttonexit=new JButton("退出");
	panel2.add(buttonload);
	panel2.add(buttonexit);
	getContentPane().setLayout(new BorderLayout());
	getContentPane().add("Center",panel1);
	getContentPane().add("South",panel2);
	setVisible(true);	
 }
}

//
class Load extends PanelLoad
{
 LoadEvent loadObj;
 public Load()
 {
	loadObj=new LoadEvent();
	buttonload.addActionListener(loadObj);
	buttonexit.addActionListener(loadObj);
 }

//内部类--登陆事件间听器
 class LoadEvent implements ActionListener
 {
	public void actionPerformed(ActionEvent e)
       {
	if(e.getSource()==buttonload)
	{
	 try
	  {
		String url="jdbc:odbc:studentinf";
		Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
		Connection dbconn=DriverManager.getConnection(url,textfieldnameload.getText(),passwdfield.getText());
		Statement statement=dbconn.createStatement();
		EventTest mainevent=new EventTest(statement);
		setVisible(false);
	  }
	 catch(ClassNotFoundException ex)
	 {
//		System.out.println("Class异常");
		JOptionPane.showMessageDialog(null,ex.toString(),"警告!",JOptionPane.WARNING_MESSAGE);
	 }
	 catch(SQLException s)
	 {
//		System.out.println("SQL异常");
//		s.printStackTrace();
		JOptionPane.showMessageDialog(null,s.toString(),"警告!",JOptionPane.WARNING_MESSAGE);
	 }
	 catch(Exception a)
	 {
//		System.out.println("Exception异常");
		JOptionPane.showMessageDialog(null,a.toString(),"警告!",JOptionPane.WARNING_MESSAGE);
	 }
	}
	if(e.getSource()==buttonexit)System.exit(0);
       }
 }
}*/

//创建主窗口mainframe
class FrameTest 
{
 JFrame mainframe;
 public FrameTest()
 {
	mainframe=new JFrame("学员信息管理器");
	mainframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	mainframe.setVisible(false);
	mainframe.setSize(400,300);
	mainframe.setResizable(false);
	mainframe.setBackground(Color.green);
 }
}


//为主窗口添加菜单
class MenuTest extends FrameTest
{
 JMenuBar menubar;
 JMenu menufile,menuhelp;
 JMenuItem menuitemnew,menuitemcheck,menuitemperfect,menuitemdelete,menuitemexit,menuitemhelp;
 public MenuTest()
 {
	menubar=new JMenuBar();
	mainframe.setJMenuBar(menubar);
	menufile=new JMenu("文件(F)");
	menuhelp=new JMenu("帮助(H)");
	menubar.add(menufile);
	menubar.add(menuhelp);
	menuitemnew=new JMenuItem("新建 (N)");
	menuitemcheck=new JMenuItem("查询 (C)");
	menuitemperfect=new JMenuItem("修改 (P)");
	menuitemdelete=new JMenuItem("删除 (D)");
	menuitemexit=new JMenuItem("退出  Alt+F4");
	menufile.add(menuitemnew);
	menufile.add(menuitemcheck);
	menufile.add(menuitemperfect);
	menufile.add(menuitemdelete);
	menufile.add(menuitemexit);
	menuitemhelp=new JMenuItem("关于软件");
	menuhelp.add(menuitemhelp);
 }
}

//为主窗口添加增、删、改、查询和欢迎组键面板,并设置主窗口布局
class MainPanel extends MenuTest
{
 JPanel mainpanel,panelwelcome,panelnew,panelcheck,panelperfect,paneldelete;
 CardLayout cardlayoutObj;

 public MainPanel()
 {
	panelwelcome=new JPanel();
	panelwelcome.setBackground(Color.green);
	panelnew=new JPanel();
	panelnew.setBackground(Color.green);
	panelcheck=new JPanel();
	panelcheck.setBackground(Color.green);
	panelperfect=new JPanel();
	panelperfect.setBackground(Color.green);
	paneldelete=new JPanel();
	paneldelete.setBackground(Color.green);
	mainpanel=new JPanel();
	mainpanel.setBackground(Color.green);
	cardlayoutObj=new CardLayout();
	mainpanel.setLayout(cardlayoutObj);
	mainpanel.add("Card1",panelwelcome);
	mainpanel.add("Card2",panelnew);
	mainpanel.add("Card3",panelcheck);
	mainpanel.add("Card4",panelperfect);
	mainpanel.add("Card5",paneldelete);
	cardlayoutObj.show(mainpanel,"Card1");	
	mainframe.add(mainpanel);
 }
}


//为 欢迎 组键面板添加组键
class PanelWelcome extends MainPanel
{
 JScrollPane slwelcome;
 JTextArea textareawelcome;
 String welcome="学员信息管理器,耗子屎制作,仅供学习,请勿传播。ladkfakdfj;akdfakdfakdsfa";
 public PanelWelcome()
 {
	textareawelcome=new JTextArea(welcome,5,12);
	textareawelcome.setEditable(false);
	textareawelcome.setLineWrap(true);
	textareawelcome.setFont(new Font("黑体",Font.BOLD,24));
	slwelcome=new JScrollPane(textareawelcome,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
	panelwelcome.add(slwelcome);
 }
}


//为 增 组键面板添加组键 400,300
class PanelNew extends PanelWelcome
{
 JLabel labelNO,labelname,labelsex,labelspecialty,labelgrade,labelbirthday,labelinformation;
 JTextField textfieldNO,textfieldname,textfieldspecialty,textfieldgrade,textfieldbirthday;
 JRadioButton rbuttonboy,rbuttongirl;
 JButton buttonnew,buttonreset;
 JTextArea textareainformation;
 JPanel subpanelnew1,subpanelnew2,subpanelnew3,subpanelnew4,subpanelnew5;
 public PanelNew()
 {
//添加subpanelnew3组键
	subpanelnew3=new JPanel();
	subpanelnew3.setBackground(Color.green);
	labelNO=new JLabel("学号:");
	subpanelnew3.add(labelNO);
	textfieldNO=new JTextField(8);
	subpanelnew3.add(textfieldNO);
	labelname=new JLabel("姓名:");
	subpanelnew3.add(labelname);
	textfieldname=new JTextField(8);
	subpanelnew3.add(textfieldname);
	labelsex=new JLabel("性别:");
	subpanelnew3.add(labelsex);
	subpanelnew5=new JPanel();
	subpanelnew5.setBackground(Color.green);
	rbuttonboy=new JRadioButton("男",true);
	rbuttongirl=new JRadioButton("女",false);
	ButtonGroup group=new ButtonGroup();
	group.add(rbuttonboy);
	group.add(rbuttongirl);
	subpanelnew5.add(rbuttonboy);
	subpanelnew5.add(rbuttongirl);
	subpanelnew3.add(subpanelnew5);
	labelspecialty=new JLabel("专业:");
	subpanelnew3.add(labelspecialty);
	textfieldspecialty=new JTextField(8);
	subpanelnew3.add(textfieldspecialty);
	labelgrade=new JLabel("班级:");
	subpanelnew3.add(labelgrade);
	textfieldgrade=new JTextField(8);
	subpanelnew3.add(textfieldgrade);
	labelbirthday=new JLabel("出生:");
	subpanelnew3.add(labelbirthday);
	textfieldbirthday=new JTextField(8);
	subpanelnew3.add(textfieldbirthday);
//设置subpanelnew3布局
	GridBagLayout gblObjpanelnew=new GridBagLayout();
	GridBagConstraints gbcObjpanelnew=new GridBagConstraints();
	subpanelnew3.setLayout(gblObjpanelnew);
	gbcObjpanelnew.weightx=1.0;
	gbcObjpanelnew.weighty=1.0;
	gbcObjpanelnew.anchor=GridBagConstraints.EAST;
	gbcObjpanelnew.gridx=0;
	gbcObjpanelnew.gridy=0;
	gblObjpanelnew.setConstraints(labelNO,gbcObjpanelnew);
	gbcObjpanelnew.gridy=1;
	gblObjpanelnew.setConstraints(labelname,gbcObjpanelnew);
	gbcObjpanelnew.gridy=2;
	gblObjpanelnew.setConstraints(labelsex,gbcObjpanelnew);
	gbcObjpanelnew.gridy=3;
	gblObjpanelnew.setConstraints(labelspecialty,gbcObjpanelnew);
	gbcObjpanelnew.gridy=4;
	gblObjpanelnew.setConstraints(labelgrade,gbcObjpanelnew);
	gbcObjpanelnew.gridy=5;
	gblObjpanelnew.setConstraints(labelbirthday,gbcObjpanelnew);
	gbcObjpanelnew.anchor=GridBagConstraints.CENTER;
	gbcObjpanelnew.gridx=1;
	gbcObjpanelnew.gridy=0;
	gblObjpanelnew.setConstraints(textfieldNO,gbcObjpanelnew);
	gbcObjpanelnew.gridy=1;
	gblObjpanelnew.setConstraints(textfieldname,gbcObjpanelnew);
	gbcObjpanelnew.gridy=2;
	gblObjpanelnew.setConstraints(subpanelnew5,gbcObjpanelnew);
	gbcObjpanelnew.gridy=3;
	gblObjpanelnew.setConstraints(textfieldspecialty,gbcObjpanelnew);
	gbcObjpanelnew.gridy=4;
	gblObjpanelnew.setConstraints(textfieldgrade,gbcObjpanelnew);
	gbcObjpanelnew.gridy=5;
	gblObjpanelnew.setConstraints(textfieldbirthday,gbcObjpanelnew);
//添加subpanelnew4组键并设置布局
	subpanelnew4=new JPanel();
	subpanelnew4.setBackground(Color.green);
	labelinformation=new JLabel("相关信息:");
	BorderLayout blObj1panelnew=new BorderLayout();
	subpanelnew4.setLayout(blObj1panelnew);
	subpanelnew4.add("North",labelinformation);
	textareainformation=new JTextArea(5,11);
	textareainformation.setLineWrap(true);
	textareainformation.setFont(new Font("18号字体",Font.TRUETYPE_FONT,18));
	subpanelnew4.add("West",textareainformation);
//添加subpanelnew1组键并设置布局
	subpanelnew1=new JPanel();
	subpanelnew1.setBackground(Color.green);
	subpanelnew1.add(subpanelnew3);
	subpanelnew1.add(subpanelnew4);
	GridLayout glObjpanelnew=new GridLayout(1,2);
	subpanelnew1.setLayout(glObjpanelnew);
//添加subpanelnew2组键并设置布局
	subpanelnew2=new JPanel();
	subpanelnew2.setBackground(Color.green);
	buttonnew=new JButton("录入");
	buttonreset=new JButton("重置");
	subpanelnew2.add(buttonnew);
	subpanelnew2.add(buttonreset);
	FlowLayout flObjpanelnew=new FlowLayout(FlowLayout.LEFT,20,10);
	subpanelnew2.setLayout(flObjpanelnew);
//添加panelnew组键并设置布局
	BorderLayout blObj2panelnew=new BorderLayout();
	panelnew.setLayout(blObj2panelnew);
	panelnew.add("Center",subpanelnew1);
	panelnew.add("South",subpanelnew2);
 }
}


//为 删 组键面板添加组键 250,200
class PanelDelete extends PanelNew
{
 JPanel subpaneldelete1,subpaneldelete2,subpaneldelete3;
 JLabel labelmeans,labeldata;
 JRadioButton rbutton1,rbutton2;	//rbutton1:完全匹配
					//rbutton2:通配符
 JComboBox comboboxmeans;
 String cbstr[]={" 学号"," 姓名"," 班级"," 专业"," 出生"};
 JTextField textfielddata;
 JButton buttondelete;
 public PanelDelete()
 {
//添加subpaneldelete1组键
	subpaneldelete1=new JPanel();
	subpaneldelete1.setBackground(Color.green);
	labelmeans=new JLabel("删除方法:");
	subpaneldelete1.add(labelmeans);
	comboboxmeans=new JComboBox(cbstr);
	subpaneldelete1.add(comboboxmeans);
	labeldata=new JLabel("匹配信息:");
	subpaneldelete1.add(labeldata);
	textfielddata=new JTextField(8);
	subpaneldelete1.add(textfielddata);
	rbutton1=new JRadioButton("完全匹配",true);
	rbutton1.setBackground(Color.green);
	rbutton2=new JRadioButton("使用通配符");
	rbutton2.setBackground(Color.green);
	ButtonGroup group2=new ButtonGroup();
	group2.add(rbutton1);
	group2.add(rbutton2);
	subpaneldelete1.add(rbutton1);
	subpaneldelete1.add(rbutton2);
//设置subpaneldelete1布局
	GridBagLayout gblObjpaneldelete=new GridBagLayout();
	GridBagConstraints gbcObjpaneldelete=new GridBagConstraints();
	subpaneldelete1.setLayout(gblObjpaneldelete);
	gbcObjpaneldelete.weightx=1.0;
	gbcObjpaneldelete.weighty=1.0;
	gbcObjpaneldelete.gridx=0;
	gbcObjpaneldelete.gridy=0;
	gblObjpaneldelete.setConstraints(labelmeans,gbcObjpaneldelete);
	gbcObjpaneldelete.gridy=1;
	gblObjpaneldelete.setConstraints(labeldata,gbcObjpaneldelete);
	gbcObjpaneldelete.gridy=2;
	gblObjpaneldelete.setConstraints(rbutton1,gbcObjpaneldelete);
	gbcObjpaneldelete.anchor=GridBagConstraints.WEST;
	gbcObjpaneldelete.gridx=1;
	gbcObjpaneldelete.gridy=0;
	gblObjpaneldelete.setConstraints(comboboxmeans,gbcObjpaneldelete);
	gbcObjpaneldelete.gridy=1;
	gblObjpaneldelete.setConstraints(textfielddata,gbcObjpaneldelete);
	gbcObjpaneldelete.gridy=2;
	gblObjpaneldelete.setConstraints(rbutton2,gbcObjpaneldelete);
//添加subpaneldelete2组键
	subpaneldelete2=new JPanel();
	subpaneldelete2.setBackground(Color.green);
	buttondelete=new JButton("确定");
	subpaneldelete2.add(buttondelete);
//添加paneldelete组键并设置布局
	BorderLayout blObjpaneldelete=new BorderLayout();
	paneldelete.setLayout(blObjpaneldelete);
	paneldelete.add("Center",subpaneldelete1);
	paneldelete.add("South",subpaneldelete2);
 }
}


//为 改 组键面板添加组键 400,300
class PanelPerfect extends PanelDelete
{
 JLabel labelNOperfect,labelnameperfect,labelsexperfect,labelspecialtyperfect,labelgradeperfect,labelbirthdayperfect,labelinformationperfect;
 JTextField textfieldNOperfect,textfieldnameperfect,textfieldspecialtyperfect,textfieldgradeperfect,textfieldbirthdayperfect;
 JRadioButton rbuttonboyperfect,rbuttongirlperfect;
 JButton buttonperfect,buttonresetperfect;
 JTextArea textareainformationperfect;
 JPanel subpanelperfect1,subpanelperfect2,subpanelperfect3,subpanelperfect4,subpanelperfect5;
 public PanelPerfect()
 {
//添加subpanelperfect3组键
	subpanelperfect3=new JPanel();
	subpanelperfect3.setBackground(Color.green);
	labelNOperfect=new JLabel("学号:");
	subpanelperfect3.add(labelNOperfect);
	textfieldNOperfect=new JTextField(8);
	subpanelperfect3.add(textfieldNOperfect);
	labelnameperfect=new JLabel("姓名:");
	subpanelperfect3.add(labelnameperfect);
	textfieldnameperfect=new JTextField(8);
	subpanelperfect3.add(textfieldnameperfect);
	labelsexperfect=new JLabel("性别:");
	subpanelperfect3.add(labelsexperfect);
	subpanelperfect5=new JPanel();
	subpanelperfect5.setBackground(Color.green);
	rbuttonboyperfect=new JRadioButton("男",true);
	rbuttongirlperfect=new JRadioButton("女",false);
	ButtonGroup group=new ButtonGroup();
	group.add(rbuttonboyperfect);
	group.add(rbuttongirlperfect);
	subpanelperfect5.add(rbuttonboyperfect);
	subpanelperfect5.add(rbuttongirlperfect);
	subpanelperfect3.add(subpanelperfect5);
	labelspecialtyperfect=new JLabel("专业:");

⌨️ 快捷键说明

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