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

📄 selectedlessoninfocheck.java~48~

📁 Tt s a good book ,if you want to learn java good
💻 JAVA~48~
📖 第 1 页 / 共 2 页
字号:
package sos;

import java.awt.*;
import javax.swing.*;
import java.sql.*;
import java.awt.Rectangle;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class SelectedLessonInfoCheck extends JDialog {
    String[] haveSelected = new String[15]; //记录已选课程的课程名称
    String[] haveSelectedScore = new String[15]; //记录已选课程的学分
    String[] haveSelectedResult = new String[15]; //记录已选课程的成绩
    String[] haveSelectedNature = new String[15]; //记录已选课程的性质
    String strLessonNumber = "", strLessonName = "", strLessonNature = ""; //记录从推荐选课和号码选课获得的课程学分,课程名和课程属性
  //  int haveSelectedScoreAll = 0;
    int haveSelectedCount = 0;
    boolean haveFound = false;
    String strNumber = "", strName = "", strStatus = "";
    // String strLessonName = "";
    // String[] haveSelected = new String[15];
    public SelectedLessonInfoCheck(Frame frame, boolean modal) {
        super(frame, modal);
        setTitle("选课信息查询");
        setSize(410, 260);
        setResizable(false);
        try {
            jbInit();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension frameSize = getSize();
        if (frameSize.height > screenSize.height) {
            frameSize.height = screenSize.height;
        }
        if (frameSize.width > screenSize.width) {
            frameSize.width = screenSize.width;
        }
        setLocation((screenSize.width - frameSize.width) / 2,
                    (screenSize.height - frameSize.height) / 2);

        setVisible(true);
    }

    private void jbInit() throws Exception {
        this.getContentPane().setLayout(null);
        jLabel_Prompt.setFont(new java.awt.Font("隶书", Font.BOLD | Font.ITALIC,
                                                25));
        jLabel_Prompt.setForeground(Color.blue);
        jLabel_Prompt.setHorizontalAlignment(SwingConstants.CENTER);
        jLabel_Prompt.setText("正在进行选课信息查询");
        jLabel_Prompt.setBounds(new Rectangle(5, 3, 390, 33));
        jLabel_SN.setFont(new java.awt.Font("华文新魏", Font.BOLD, 15));
        jLabel_SN.setHorizontalAlignment(SwingConstants.CENTER);
        jLabel_SN.setText("学号:");
        jLabel_SN.setBounds(new Rectangle(3, 38, 39, 25));
        jTextField_SN.setHorizontalAlignment(SwingConstants.CENTER);
        jTextField_SN.setBounds(new Rectangle(44, 38, 88, 24));
        jTextField_SN.addActionListener(new
                                        SelectedLessonInfoCheck_jTextField_SN_actionAdapter(this));
        jLabel_Name.setFont(new java.awt.Font("华文新魏", Font.BOLD, 15));
        jLabel_Name.setHorizontalAlignment(SwingConstants.CENTER);
        jLabel_Name.setText("姓名:");
        jLabel_Name.setBounds(new Rectangle(132, 38, 39, 25));
        jTextField_Name.setEditable(false);
        jTextField_Name.setHorizontalAlignment(SwingConstants.CENTER);
        jTextField_Name.setBounds(new Rectangle(171, 38, 61, 24));
        jLabel_Status.setFont(new java.awt.Font("华文新魏", Font.BOLD, 15));
        jLabel_Status.setHorizontalAlignment(SwingConstants.CENTER);
        jLabel_Status.setText("在读:");
        jLabel_Status.setBounds(new Rectangle(233, 38, 39, 25));
        jTextField_Status.setEditable(false);
        jTextField_Status.setHorizontalAlignment(SwingConstants.CENTER);
        jTextField_Status.setBounds(new Rectangle(272, 38, 125, 23));
        jLabel_HaveSelected.setFont(new java.awt.Font("华文新魏", Font.BOLD, 15));
        jLabel_HaveSelected.setText("本学期已选课程:");
        jLabel_HaveSelected.setBounds(new Rectangle(2, 68, 127, 33));
        jComboBox_HaveSelected.setEnabled(false);
        jComboBox_HaveSelected.setBounds(new Rectangle(131, 68, 251, 30));
        jButton_LookMore.setBounds(new Rectangle(44, 104, 155, 28));
        jButton_LookMore.setEnabled(false);
        jButton_LookMore.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 15));
        jButton_LookMore.setText("查看选定课程");
        jButton_LookMore.addActionListener(new
                                           SelectedLessonInfoCheck_jButton_LookMore_actionAdapter(this));
        jLabel_All.setFont(new java.awt.Font("华文新魏", Font.BOLD, 15));
        jLabel_All.setText("本学期已选课程共计:");
        jLabel_All.setBounds(new Rectangle(0, 137, 173, 33));
        jTextField_All.setEditable(false);
        jTextField_All.setText("15");
        jTextField_All.setHorizontalAlignment(SwingConstants.CENTER);
        jTextField_All.setBounds(new Rectangle(155, 141, 44, 23));
        jLabel_Men.setFont(new java.awt.Font("华文新魏", Font.BOLD, 15));
        jLabel_Men.setText("门");
        jLabel_Men.setBounds(new Rectangle(206, 141, 24, 22));
        jLabel_Score.setFont(new java.awt.Font("华文新魏", Font.BOLD, 15));
        jLabel_Score.setHorizontalAlignment(SwingConstants.CENTER);
        jLabel_Score.setText("学分:");
        jLabel_Score.setBounds(new Rectangle(232, 141, 50, 22));
        jButton_GoOn.setBounds(new Rectangle(44, 177, 154, 28));
        jButton_GoOn.setEnabled(false);
        jButton_GoOn.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 15));
        jButton_GoOn.setText("继续查询信息");
        jButton_GoOn.addActionListener(new
                                       SelectedLessonInfoCheck_jButton1_actionAdapter(this));
        jButton_Cancel.setBounds(new Rectangle(207, 177, 155, 28));
        jButton_Cancel.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 15));
        jButton_Cancel.setText("退出信息查询");
        jButton_Cancel.addActionListener(new
                                         SelectedLessonInfoCheck_jButton_Cancel_actionAdapter(this));
        jComboBox_Score.setEnabled(false);
        jComboBox_Score.setBounds(new Rectangle(279, 139, 118, 28));
        jButton_Delete.setBounds(new Rectangle(207, 104, 155, 28));
        jButton_Delete.setEnabled(false);
        jButton_Delete.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 15));
        jButton_Delete.setText("删除选定课程");
        jButton_Delete.addActionListener(new
                                         SelectedLessonInfoCheck_jButton_Delete_actionAdapter(this));
        this.getContentPane().add(jLabel_Prompt);
        this.getContentPane().add(jLabel_SN);
        this.getContentPane().add(jTextField_SN);
        this.getContentPane().add(jLabel_Name);
        this.getContentPane().add(jTextField_Name);
        this.getContentPane().add(jLabel_Status);
        this.getContentPane().add(jTextField_Status);
        this.getContentPane().add(jLabel_HaveSelected);
        this.getContentPane().add(jComboBox_HaveSelected);
        this.getContentPane().add(jLabel_All);
        this.getContentPane().add(jTextField_All);
        this.getContentPane().add(jLabel_Men);
        this.getContentPane().add(jLabel_Score);
        this.getContentPane().add(jComboBox_Score);
        this.getContentPane().add(jButton_Cancel);
        this.getContentPane().add(jButton_GoOn);
        this.getContentPane().add(jButton_LookMore);
        this.getContentPane().add(jButton_Delete);
    }

    JLabel jLabel_Prompt = new JLabel();
    JLabel jLabel_SN = new JLabel();
    JTextField jTextField_SN = new JTextField();
    JLabel jLabel_Name = new JLabel();
    JTextField jTextField_Name = new JTextField();
    JLabel jLabel_Status = new JLabel();
    JTextField jTextField_Status = new JTextField();
    JLabel jLabel_HaveSelected = new JLabel();
    JComboBox jComboBox_HaveSelected = new JComboBox();
    JButton jButton_LookMore = new JButton();
    JLabel jLabel_All = new JLabel();
    JTextField jTextField_All = new JTextField();
    JLabel jLabel_Men = new JLabel();
    JLabel jLabel_Score = new JLabel();
    JButton jButton_GoOn = new JButton();
    JButton jButton_Cancel = new JButton();
    JComboBox jComboBox_Score = new JComboBox();
    JButton jButton_Delete = new JButton();

    public void deleteOneSubject() { //删除一门课程时将后面的课程信息向前提的方法
//需要注意前移课程名称和学分的问题以及删除一门课程以后jTextField和jComboBox的内容要及时更新。
        int shouldBeDeleted = -1; //考虑重置的位置和时机
        for (int i = 0; i < haveSelected.length; i++) { //通过数组来确定需要删除的课程在表中的列号
            if (strLessonName.equals(haveSelected[i])) {
                shouldBeDeleted = i;
                break;
            }
        }
        if (shouldBeDeleted != -1) { //将需要删除的课程信息从数组中删除
            shouldBeDeleted = -1; //将其重置

            for (int i = 0; i < haveSelected.length; i++) {
                if (strLessonName.equals(haveSelected[i])) {
                    while (true) {
                        if (i == haveSelected.length - 1) {
                            haveSelected[i] = null;
                            haveSelectedNature[i] = null;
                            haveSelectedScore[i] = "0";
                            haveSelectedResult[i] = "0";
                            break;
                        }
                        haveSelected[i] = haveSelected[i + 1];
                        haveSelectedNature[i] = haveSelectedNature[i + 1];
                        haveSelectedScore[i] = haveSelectedScore[i + 1];
                        haveSelectedResult[i] = haveSelectedResult[i + 1];
                        i++;
                    }
                    break;
                }
            }
        }
        try {
            Statement stmt;
            ResultSet rs;
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection con = DriverManager.getConnection("jdbc:odbc:db_STU",
                    "",
                    "");
            stmt = con.createStatement();
            String tempOrder = "update Result_Info set ";
            for (int i = 0; i < haveSelected.length; i++) { //确定命令语句的循环
                if (haveSelected[i] != null) {
                    tempOrder += "课程" + (i + 1) + "='" + haveSelected[i] +
                            "',属性" + (i + 1) + "='" + haveSelectedNature[i] +
                            "',学分" +
                            (i + 1) + "=" +
                            haveSelectedScore[i] + ",成绩" + (i + 1) + "=" +
                            haveSelectedResult[i] + ",";
                } else {
                    tempOrder += "课程" + (i + 1) + "=null,属性" + (i + 1) +
                            "=null,学分" + (i + 1) +
                            "=0,成绩" + (i + 1) + "=0,";
                }
            }
            tempOrder = tempOrder.substring(0, tempOrder.length() - 1) +
                        " where 学号='" + strNumber + "'";
            stmt.executeUpdate(tempOrder);
            stmt.close();
            con.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        //将JComboBox等新
        jComboBox_HaveSelected.removeAllItems();
        for (int i = 0; i < haveSelected.length; i++) {
            if (haveSelected[i] != null) {
                jComboBox_HaveSelected.addItem(haveSelected[i]);
            }
        }
        if (jComboBox_HaveSelected.getItemCount() > 0) {
            jComboBox_HaveSelected.setEnabled(true);
        } else if (
                jComboBox_HaveSelected.getItemCount() == 0) {
            jComboBox_HaveSelected.addItem("尚未选定课程");
            jComboBox_HaveSelected.setEnabled(false);
        }
        JOptionPane.showMessageDialog(this, "已成功删除该课程记录。", "成功删除记录", 2);
    }

    public void deleteFromComboBox() {

⌨️ 快捷键说明

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