【问题标题】:Compare users input比较用户输入
【发布时间】:2015-08-30 01:33:17
【问题描述】:

我有一个带有问题的 text.file 和另一个带有问题正确答案的 text.file。我的程序包含一些 JButton-s,当用户单击按钮时,它会显示一个新窗格,其中包含一个带有多项选择答案的问题,然后要求用户写下正确答案的字母。我已经做了这些事情并且它有效。但我想将输入的答案与正确答案进行比较,并仅将正确答案的数量存储在 text.file
如果您能提供一些建议或示例代码,我将不胜感激。提前谢谢你,这是我的代码,我需要在其中添加这些东西。

  JTextField xField = new JTextField(5);

                JPanel myPanel = new JPanel();
                myPanel.add(new JLabel("Answer: "));
                myPanel.add(xField);
                myPanel.add(Box.createHorizontalStrut(20));

                int result = JOptionPane.showConfirmDialog(null, myPanel,
                        "Please Enter your Answer", JOptionPane.OK_CANCEL_OPTION);

                return;
            }

        }

    }

【问题讨论】:

    标签: java input store


    【解决方案1】:

    几年前我也做过类似的申请。我所做的是将带有一些答案的问题放在一个文本文件中。第一个答案总是正确的答案。 当屏幕上显示一个问题(及其可能的答案)时,我使用一种方法来更改可能答案的顺序,并记住正确答案的数字(或字母)。然后,当我收到用户的输入时,很容易将答案与正确答案进行比较。

    在我的应用程序中,我没有要求输入字母,但我使用了单选按钮,用户必须从中选择 1。从键盘输入的优点是用户可以使用大写/小写, 或广告一个空格, 左右, 这使得正确的答案可能无法识别。单选按钮更容易比较,因为您将收到所选按钮的编号,而不会出现用户意外的额外输入。

    【讨论】:

    • 如果我能从你的代码中看到一小部分,你是如何将单选按钮放在非常单一的答案之前的。提前谢谢你
    【解决方案2】:

    我建议您阅读问题文件并将其填充到JLabel 中,然后获取相应的答案。

    如果只有一个答案,我们可以使用radioButtons 而不是textBox

    如果您有多个选项,可以使用checkBoxes

    如何创建标签

    JLabel questionLabel = new JLabel(question);
    

    如何创建单选按钮。

    JRadioButton optionA = new JRadioButton("A. "+ option[ 0 ]);
    JRadioButton optionB = new JRadioButton("B. "+ option[ 1 ]);
    JRadioButton optionC = new JRadioButton("C. "+ option[ 2 ]);
    JRadioButton optionD = new JRadioButton("D. "+ option[ 3 ]);
    
    ButtonGroup group = new ButtonGroup();
    group.add(optionA);
    group.add(optionB);
    group.add(optionC);
    group.add(optionD);
    

    现在循环查看您的radioButtons,然后获取您的选项并检查实际答案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-09
      • 2015-07-02
      • 2021-08-22
      • 2018-01-20
      • 2011-04-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多