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

📄 classframe.java~167~

📁 学生管理系统
💻 JAVA~167~
📖 第 1 页 / 共 2 页
字号:
package xxglxt;

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.Rectangle;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JComboBox;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
import java.sql.SQLException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.PreparedStatement;
import java.awt.event.InputMethodEvent;
import java.awt.event.InputMethodListener;
//加載班級頁面
public class ClassFrame extends JPanel {

    public ClassFrame() {

    }
//初始化程序界面
    public JPanel jbInit()  {

        setLayout(null);
        jLabel1.setText("年級選擇:");
        jLabel1.setBounds(new Rectangle(31, 31, 77, 64));
        jComboBox2.setBounds(new Rectangle(116, 89, 149, 26));
        jComboBox2.addActionListener(new ClassFrame_jComboBox2_actionAdapter(this));
        jComboBox1.setBounds(new Rectangle(116, 49, 149, 26));
        jComboBox1.addActionListener(new ClassFrame_jComboBox1_actionAdapter(this));
        jTextField1.setEnabled(false);
        jTextField1.setBounds(new Rectangle(98, 148, 120, 26));
        jTextField2.setEnabled(false);
        jTextField2.setBounds(new Rectangle(98, 175, 120, 28));
        jLabel3.setText("年    級:");
        jLabel3.setBounds(new Rectangle(29, 151, 61, 23));
        jLabel4.setText("班    級:");
        jLabel4.setBounds(new Rectangle(29, 183, 61, 20));
        jLabel5.setText("班 主 任:");
        jLabel5.setBounds(new Rectangle(29, 207, 66, 25));
        jTextField3.setEnabled(false);
        jTextField3.setBounds(new Rectangle(98, 203, 119, 28));
        jLabel6.setText("任課老師:");
        jLabel6.setBounds(new Rectangle(29, 232, 63, 26));
        jTextField4.setEnabled(false);
        jTextField4.setBounds(new Rectangle(98, 231, 118, 27));

        jButton5.setBounds(new Rectangle(228, 121, 95, 26));
        jButton5.setText("刪除");
        jButton5.addActionListener(new ClassFrame_jButton5_actionAdapter(this));

        jButton1.setBounds(new Rectangle(228, 148, 95, 26));
        jButton1.setText("增加");
        jButton1.addActionListener(new ClassFrame_jButton1_actionAdapter(this));
        jButton2.setBounds(new Rectangle(228, 175, 95, 30));
        jButton2.setText("修改");
        jButton2.addActionListener(new ClassFrame_jButton2_actionAdapter(this));
        jButton3.setBounds(new Rectangle(228, 206, 95, 25));
        jButton3.setText("保存");
        jButton3.addActionListener(new ClassFrame_jButton3_actionAdapter(this));
        jButton3.setEnabled(false);
        jButton4.setBounds(new Rectangle(228, 233, 95, 28));
        jButton4.setText("取消");
        jButton4.setEnabled(false);
        jButton4.addActionListener(new ClassFrame_jButton4_actionAdapter(this));
        jScrollPane1.setAutoscrolls(true);
        jScrollPane1.setBounds(new Rectangle(340, 16, 238, 242));
        jTextArea1.setEnabled(false);
        this.add(jLabel1);
        this.add(jComboBox1);
        this.add(jLabel2);
        this.add(jComboBox2);
        jScrollPane1.getViewport().add(jTextArea1);
        this.add(jTextField3);
        this.add(jLabel3);
        this.add(jTextField1);
        this.add(jLabel4);
        this.add(jTextField2);
        this.add(jLabel5);
        this.add(jLabel6);
        this.add(jTextField4);
        this.add(jButton1);
        this.add(jButton2);
        this.add(jButton3);
        this.add(jButton4);
         this.add(jButton5);
        this.add(jScrollPane1);
        jLabel2.setText("班級選擇:");
        jLabel2.setBounds(new Rectangle(31, 77, 90, 58));
        firstdata();//初始化程序數據
        return this;
    }
    //初始化程序數據
    private void firstdata(){

        try {

            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //驅動加載
            con = DriverManager.getConnection("jdbc:odbc:glxt"); //數據橋連名子為ODBC名為glxt
        } catch (ClassNotFoundException ex) {
            //驅程不存在
            JOptionPane.showMessageDialog(null, "驅程不存在");
        } catch (SQLException ex1) {
            //ODBC連接失敗
            JOptionPane.showMessageDialog(null, "ODBC連接失敗");
        }


        try {
             sql = "select Grade_name from gradetable";//查詢班級表中的班名
            pre = con.prepareStatement(sql);
            result = pre.executeQuery();
            jComboBox1.removeAllItems();
            while (result.next()) {
                jComboBox1.addItem(result.getString(1));//查出的班名加入下拉列表中
            }
            result.close();
            pre.close();
        }
       catch(SQLException ex2) {

        }


        try {
            sql="select Grade_id from gradetable where Grade_name=?";//根據班名查出年級ID
            pre = con.prepareStatement(sql);
            pre.setString(1,String.valueOf(jComboBox1.getSelectedItem()));
            result=pre.executeQuery();
            while(result.next()){
                inttemp=result.getInt(1);//將年級ID存臨時變量
            }
            result.close();
            pre.close();
        } catch (SQLException ex3) {

        }


        try {
            sql = "select class_name from dbo.classtable where Grade_id=?";//根據年級ID查出班名。
            pre = con.prepareStatement(sql);
            pre.setInt(1, inttemp);
            result=pre.executeQuery();
            jComboBox2.removeAllItems();//清空下拉列表
            while(result.next()){
                jComboBox2.addItem(result.getString(1));//把班級名稱加入到下拉列表
            }
            result.close();
            pre.close();
        } catch (SQLException ex4) {

        }
        jTextField1.setText(String.valueOf(jComboBox1.getSelectedItem()));
        jTextField2.setText(String.valueOf(jComboBox2.getSelectedItem()));


        try {
            sql = "select class_bzr,class_rkls,class_massage from classtable where class_name=? ";//查出當前班的信息
            pre = con.prepareStatement(sql);
            pre.setString(1,jTextField2.getText());
            result=pre.executeQuery();
            if(result.next()){
                jTextField3.setText(result.getString(1));
                jTextField4.setText(result.getString(2));
                strtemp=result.getString(3).trim();
                jTextArea1.setText("年級:"+ jTextField1.getText()+'\n'+"班級:"+
                                   jTextField2.getText()+'\n'+"班主任:"+jTextField3.getText()+
                        '\n'+"任課老師:"+jTextField4.getText()+'\n'+"班級特點:"+strtemp);
            }
            result.close();
            pre.close();

        } catch (SQLException e4) {

        }


    }

    JLabel jLabel1 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JComboBox jComboBox1 = new JComboBox();
    JComboBox jComboBox2 = new JComboBox();
    JTextField jTextField1 = new JTextField();
    JTextField jTextField2 = new JTextField();
    JLabel jLabel3 = new JLabel();
    JLabel jLabel4 = new JLabel();
    JLabel jLabel5 = new JLabel();
    JTextField jTextField3 = new JTextField();
    JLabel jLabel6 = new JLabel();
    JTextField jTextField4 = new JTextField();
    JButton jButton1 = new JButton();
    JButton jButton2 = new JButton();
    JButton jButton3 = new JButton();
    JButton jButton4 = new JButton();
    JButton jButton5=new JButton();
    JScrollPane jScrollPane1 = new JScrollPane();
    JTextArea jTextArea1 = new JTextArea();
    String strtemp = ""; //用來存放暫時的字符串
    String strtemp2 = ""; //用來存放暫時的字符串
    int inttemp = 0; //用來存放暫時的數字
    ResultSet result; //保存結果集
    Connection con=null; //連接
    PreparedStatement pre=null; //SQL語句處理
    String sql=""; //SQL語句
    String bj="";//班級存放
    String bzr="";//班主任存放
    String rkls="";//任課老師
    boolean add;
//增加班級記錄
    public void jButton1_actionPerformed(ActionEvent e) {
        bj = jTextField2.getText();
        bzr = jTextField3.getText();
        rkls = jTextField4.getText();
        jButton5.setEnabled(false);
        jButton4.setEnabled(true);
        jButton2.setEnabled(false);
        jButton3.setEnabled(true);
        jButton1.setEnabled(false);
        jTextField2.setEnabled(true);
        jTextField3.setEnabled(true);
        jTextField4.setEnabled(true);
        jTextArea1.setEnabled(true);
        jComboBox1.setEnabled(false);
        jComboBox2.setEnabled(false);
        strtemp2 = jTextArea1.getText().trim();
        jTextArea1.setText("");
        add=true;
         jTextField2.setText("");
         jTextField3.setText("");
         jTextField4.setText("");







    }
//選擇年級下拉列表
    public void jComboBox1_actionPerformed(ActionEvent e) {

//
        try {

            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //驅動加載
            Connection con = DriverManager.getConnection("jdbc:odbc:glxt"); //數據橋連名子為ODBC名為glxt
        } catch (ClassNotFoundException ex) {
            //驅程不存在
            JOptionPane.showMessageDialog(null, "驅程不存在");
        } catch (SQLException ex1) {
            //ODBC連接失敗
            JOptionPane.showMessageDialog(null, "ODBC連接失敗");
        }
        try {
           sql="select Grade_id from gradetable where Grade_name=?";
           pre = con.prepareStatement(sql);
           pre.setString(1,String.valueOf(jComboBox1.getSelectedItem()));
           result=pre.executeQuery();
           while(result.next()){
               inttemp=result.getInt(1);
           }
           result.close();
           pre.close();
       } catch (SQLException ex3) {

       }


       try {
           sql = "select class_name from dbo.classtable where Grade_id=?";
           pre = con.prepareStatement(sql);
           pre.setInt(1, inttemp);
           result=pre.executeQuery();
           jComboBox2.removeAllItems();
           while(result.next()){
               jComboBox2.addItem(result.getString(1));
           }
           result.close();
           pre.close();

       } catch (SQLException ex4) {

       }

       jTextField1.setText(String.valueOf(jComboBox1.getSelectedItem()));
       jTextField2.setText(String.valueOf(jComboBox2.getSelectedItem()));
       try {
           sql = "select class_bzr,class_rkls,class_massage from classtable where class_name=? ";
           pre = con.prepareStatement(sql);
           pre.setString(1,jTextField2.getText());
           result=pre.executeQuery();
           if(result.next()){
               jTextField3.setText(result.getString(1));
               jTextField4.setText(result.getString(2));

⌨️ 快捷键说明

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