java - 使用 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);
}
解决方案
推荐阅读
- android - 加载异步地图时传递空值
- json - 从具有条目值的 url 解析 Json 并在 SwiftUI 中列出它们
- c# - 启动 exe 时使用的参数与在 Visual Studio 中启动时使用的参数不同
- python - 如何从同级文件夹中导入模块?
- java - JUnit - 如何测试接受用户输入并相应打印结果的主要方法?
- pine-script - PineScript input.symbol 未清除
- python - flask sqlalchemy update sql raw 命令不提供任何响应
- flutter - 在 Mac 上的终端安装后,Future 已经完成
- typescript - 为什么每次更改 TextInput 时我的导出函数都会调用
- common-lisp - 将符号导入 CL-USER(用于“迭代”)