📄 lasttest.java
字号:
throw new TextException(); if ((psd_t.getText().length() < 4) || (psd_t.getText().length() > 10)) throw new PsdException(); }}class MainFrame extends JFrame //主窗口{ public MainFrame(String b,WelcomeFrame a) { setTitle("欢迎使用学生信息管理系统"); setBounds(150,150,400,300); setResizable(false); MainPanel mpanel = new MainPanel(b,a,this); getContentPane().add(mpanel); new File("D:\\INFO\\").mkdirs(); }}class MainPanel extends JPanel{ private final JLabel num,phone,name,school,address; private final JTextField num_t,phone_t,name_t,school_t,address_t; private final JButton save,show,logout,quit; private final JScrollPane sp; private final JTextArea message; private final StringBuffer buffer; private final File file; private FileWriter writer; private FileReader reader; private boolean appear = false; private String mess; public MainPanel(String b,final WelcomeFrame a,final MainFrame c) { file = new File("D:\\INFO\\" + b + ".dat"); setLayout(new FlowLayout()); num = new JLabel("学号:"); phone = new JLabel("电话:"); name = new JLabel("姓名:"); school= new JLabel("学校:"); address = new JLabel("地址:"); num_t = new JTextField(b,12); num_t.setEnabled(false); phone_t = new JTextField(12); name_t = new JTextField(12); school_t = new JTextField(12); address_t = new JTextField(29); if (!file.exists()) { save = new JButton("保存(S)"); save.setMnemonic('S'); save.setToolTipText("保存信息"); } else { save = new JButton("修改(M)"); save.setMnemonic('M'); save.setToolTipText("修改信息"); } show = new JButton("显示(D)"); show.setMnemonic('D'); show.setToolTipText("显示信息"); logout = new JButton("注销(L)"); logout.setMnemonic('L'); logout.setToolTipText("注销登陆"); quit = new JButton("退出(Q)"); quit.setMnemonic('Q'); quit.setToolTipText("退出系统"); message = new JTextArea(8,33); message.setLineWrap(true); message.setWrapStyleWord(true); message.setEditable(false); sp = new JScrollPane(message); buffer = new StringBuffer(); add(num); add(num_t); add(phone); add(phone_t); add(name); add(name_t); add(school); add(school_t); add(address); add(address_t); add(save); add(show); add(logout); add(quit); add(sp); c.addWindowListener(new WindowAdapter() { public void windowOpened(WindowEvent e) { c.setBounds(150,150,400,200); sp.setVisible(false); } }); phone_t.addKeyListener(new KeyAdapter() //控制输入的字符 { public void keyTyped(KeyEvent e) { char ch = e.getKeyChar(); if (ch < '0' || ch > '9') { if (ch != '\b') { e.consume(); } } } }); save.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { FileWriter writer = new FileWriter(file); mess = num.getText().trim() + num_t.getText().trim() + "\n" + phone.getText().trim() + phone_t.getText().trim() + "\n" + name.getText().trim() + name_t.getText().trim() + "\n" + school.getText().trim() + school_t.getText().trim() + "\n" + address.getText().trim() + address_t.getText().trim() + "\n\n"; writer.write(mess); writer.close(); if (appear) { buffer.delete(0,buffer.length()); appear = false; show.doClick(); } } catch (IOException e1) { try { if (!file.exists()) file.createNewFile(); } catch (IOException e2) {} } finally { save.setText("修改(M)"); save.setMnemonic('M'); save.setToolTipText("修改信息"); } } }); show.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (!appear) { try { FileReader reader = new FileReader(file); int k; while ((k = reader.read()) != -1) { buffer.append((char)k); } message.setText(buffer.toString()); reader.close(); show.setText("隐藏(H)"); show.setMnemonic('H'); show.setToolTipText("隐藏信息"); c.setBounds(150,150,400,300); sp.setVisible(true); appear = true; } catch (IOException e1) { JOptionPane.showMessageDialog(null,"没有这个数据存在!","警告",2); } } else { buffer.delete(0,buffer.length()); message.setText(""); show.setText("显示(D)"); show.setMnemonic('D'); show.setToolTipText("显示信息"); sp.setVisible(false); c.setBounds(150,150,400,200); appear = false; } } }); logout.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) //注销时两个窗口的切换 { int l = JOptionPane.showConfirmDialog(null,"你确定要注销吗?","信息",0,3); if (l == 0) { a.setVisible(true); c.setVisible(false); phone_t.setText(""); name_t.setText(""); school_t.setText(""); address_t.setText(""); appear = false; } } }); quit.addActionListener(new ActionListener() //退出系统按钮,跟窗体事件一样 { public void actionPerformed(ActionEvent e) { int l = JOptionPane.showConfirmDialog(null,"你确定要退出系统吗?","选择操作",2,3); if (l == 0) System.exit(0); } }); }}class TextException extends Exception //学号格式异常{ public void display() { JOptionPane.showMessageDialog(null,"学号应该输入四位数字!请重新输入!","错误",0); }}class PsdException extends Exception //密码长度异常{ public void display() { JOptionPane.showMessageDialog(null,"密码应该在4-10之间,请重新输入!","错误",0); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -