我正在创建一个基本的Java GUI琐事游戏,选择一个单选按钮,然后单击一个按钮。然后,程序检查是否选择了正确的单选按钮。它根据选择的单选按钮显示一条消息。由于某些原因,即使您为第一个问题选择了正确的单选按钮,即使您选择了正确的单选按钮,它也会显示“ false”。
更令人困惑的是,消息“假”来自第二个问题。如果输入错误,第一个问题将显示“ False”。我对为什么会发生这种情况感到非常困惑,我希望获得一些帮助。
private static class ButtonHandler implements ActionListener
{
public void actionPerformed (ActionEvent e)
{
String recieve = e.getActionCommand ();
if (recieve.equals("name")) {
String input = txtName.getText ();
lblTitle2.setText(input + " want's to be a Millionare!");
}
frame1.setVisible (false);
frame2.setVisible(true);
int counter = 0;
if (recieve.equals("q1")) {
A.setEnabled(true);
B.setEnabled(true);
C.setEnabled(true);
D.setEnabled(true);
Rbtn1.setEnabled(false);
lblFill1.setText("What is on the Canadian Quarter?");
A.setText("Caribou");
B.setText("Deer");
C.setText("Schooner");
D.setText("Seal");
}
if (recieve.equals("final") && counter==0) {
if (A.isSelected()) {
lblScore.setText("Correct");
Rbtn2.setEnabled(true);
A.setEnabled(false);
B.setEnabled(false);
C.setEnabled(false);
D.setEnabled(false);
}
else {
lblScore.setText("False");
}
}
counter++;
if (recieve.equals("q2")) {
A.setEnabled(true);
B.setEnabled(true);
C.setEnabled(true);
D.setEnabled(true);
Rbtn2.setEnabled(false);
lblFill1.setText("The side of a coin with the face is called the?");
A.setText("Tail");
B.setText("Head");
C.setText("Face");
D.setText("Up");
}
if (recieve.equals("final") && counter==1 ) {
if (B.isSelected()) {
lblScore.setText("correct");
Rbtn3.setEnabled(true);
}
else {
lblScore.setText("false");
}
}
}
}
将柜台声明放在外面:
private static class ButtonHandler implements ActionListener
{
int counter = 0;
public void actionPerformed (ActionEvent e)
{
放入
counter ++;
成功答复后,例如
if (A.isSelected()) {
counter ++;