📄 stinf.java
字号:
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 + -