首页 > 解决方案 > 使用 Java Mysql 未减少单选按钮未选中标记

问题描述

我正在用 Java 和 Mysql 创建一个简单的考试系统。当我开始考试时,数据库中显示的所有问题都成功,如果我阅读了问题并回答了它,然后单击下一步按钮,它将移至下一个问题。它工作正常。如果正确单击答案标记添加 1. 除非未选中答案答案变为 0 我想要它。我的问题是,如果我单击单选按钮上的正确答案,则会将更改标记为一个。同样的问题我再次选择错误答案它没有改变0,它仍然标记为1。如何解决这个问题我清除了它不会清除的单选按钮。到目前为止我尝试了什么,我附在下面。

点击 正确答案 。标记显示 1 在此处正确输入图像描述

在相同的问题答案更改为错误答案之后。标记显示 1.如果我们选择错误的答案,我需要显示第二次标记减少。我需要改变,因为 1 变成 0

在此处输入图像描述

编码到目前为止我在下面附上的尝试。点击答案

public void answercheck()
   { 
       String studentanswer="";
       if(r1.isSelected())
       {    
      if(r1.isSelected() == true)
       {
           studentanswer = r1.getText();
           r2.setSelected(false);
           r3.setSelected(false);
           r4.setSelected(false);
       }
        else
       {
           studentanswer="";
           r1.setSelected(false);
            r2.setSelected(true);
           r3.setSelected(true);
           r4.setSelected(true);
       }
       }

       else  if(r2.isSelected())
       {
        if(r2.isSelected() == true)
       {
           studentanswer = r2.getText();

           r1.setSelected(false);
           r3.setSelected(false);
           r4.setSelected(false);
       }

            else
       {
           studentanswer="";
           r2.setSelected(false);
           r1.setSelected(true);
           r3.setSelected(true);
           r4.setSelected(true);
       }
   }

       else  if(r3.isSelected())
       {
          if(r3.isSelected() == true)
          {
           studentanswer = r3.getText();
            r1.setSelected(false);
           r2.setSelected(false);
           r4.setSelected(false);
          }
          else
          {
                 studentanswer="";
                r3.setSelected(false);
                r1.setSelected(true);
                r2.setSelected(true);
                r4.setSelected(true);
          }
       }


      else  if(r4.isSelected())
       {
          if(r4.isSelected() == true)
          {
           studentanswer = r4.getText();
            r1.setSelected(false);
           r2.setSelected(false);
           r4.setSelected(false);
          }
          else
          {
                 studentanswer="";
                r4.setSelected(false);
                r1.setSelected(true);
                r2.setSelected(true);
                r4.setSelected(true);
          }
       }
      if(studentanswer.equals(answer))
       {

           marks = marks + 1;
           String marks1 = String.valueOf(marks);
           txtc.setText(marks1);

       }

 }

从数据库中加载所有问题

   public void Connection()
   {

        try {
             Class.forName("com.mysql.jdbc.Driver");
             con = DriverManager.getConnection("jdbc:mysql://localhost/onlineex","root","");
             stat = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
             rs = stat.executeQuery("select id,question,option1,option2,option3,option4,answer from questions order by id DESC");

              while(rs.next())
            {     
                txtqu.setText(rs.getString("id"));
                txtques.setText(rs.getString("question"));
                r1.setText(rs.getString(3));
                r2.setText(rs.getString(4));
                r3.setText(rs.getString(5));
                r4.setText(rs.getString(6));
                 answer = rs.getString(7);
            }


        } catch (ClassNotFoundException ex) {

        } catch (SQLException ex) {

        }

   }

下一步点击按钮

if(!rs.isFirst())
            {

            rs.previous();
             txtqu.setText(rs.getString("id"));
            txtques.setText(rs.getString("question"));
            r1.setText(rs.getString(3));
            r2.setText(rs.getString(4));
            r3.setText(rs.getString(5));
            r4.setText(rs.getString(6));
            answer = rs.getString(7);
            answercheck();
            }   

上一个点击按钮

if(!rs.isLast())
            {
                rs.next();
                txtqu.setText(rs.getString("id"));
                txtques.setText(rs.getString("question"));
                r1.setText(rs.getString(3));
                r2.setText(rs.getString(4));
                r3.setText(rs.getString(5));
                r4.setText(rs.getString(6));
                answer = rs.getString(7);

            }

标签: java

解决方案


推荐阅读