单击按钮时更改标签文本

时间:2014-07-02 15:48:43

标签: java swing actionevent

我正在尝试创建一个测验的摇摆应用程序。我需要jLabel更改按钮单击,但当我单击按钮时,应用程序会锁定。有人能指出我正确的方向吗?

我的按钮点击代码如下:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    String[] questions = {"test0","test1","test2","test3","test4","test5","test6"};
    String[] answers = {"","","","","","",""};
    int i = 0;

    do {
        jLabel2.setText(questions[i]);
        index.setText(String.valueOf(i));
        if (txtAnswer.getText().toLowerCase().equals(answers[i].toLowerCase())) {
            i++;
            jLabel2.setText(questions[i]);
        }
        else {
            add(lblWrong);
        }
    }
    while(i < 7);
}      

我收到一条警告,表示没有使用evt参数,这可能是个问题吗?

谢谢

2 个答案:

答案 0 :(得分:1)

在你的循环的else条件下,你根本不向i添加1 - 因此你可能最终会在它永远不会增加的情况下结束,因此它将是无限的循环(锁定你的程序。)

答案 1 :(得分:1)

你不想要do while循环。它会按下按钮按下您的方法,就像您得到错误的答案一样,您继续输入其他内容并且无法离开,停止应用程序的工作。用if语句替换它,检查i&lt; 7。