If statement If statement=使我的应用程序崩溃

If statement If statement=使我的应用程序崩溃,if-statement,button,netbeans,codenameone,If Statement,Button,Netbeans,Codenameone,我正在创建一个应用程序,当我单击按钮将文本字段中的值增加1时,该应用程序崩溃。这是一个按钮单击事件 我把一切都放在一个永远不会结束的while循环中。然后,ifs将int中的值增加1,然后将其存储到字符串中,该字符串将把值设置为文本框。我还将包括一个减少按钮来做相反的 String SetUp = findTxtComp().getText(); int ChstSetLoop; ChstSetLoop = 1; while(ChstSetLoop == 1){

我正在创建一个应用程序,当我单击按钮将文本字段中的值增加1时,该应用程序崩溃。这是一个按钮单击事件

我把一切都放在一个永远不会结束的while循环中。然后,ifs将int中的值增加1,然后将其存储到字符串中,该字符串将把值设置为文本框。我还将包括一个减少按钮来做相反的

 String SetUp = findTxtComp().getText();

int ChstSetLoop;
ChstSetLoop = 1;

        while(ChstSetLoop == 1){
            ChstSetLoop = 1;
    if(SetUp.equals("0")){


        SetUp = "1";

        findTxtComp().setText("1");
        ChstSetLoop = 0;
    }
    else if(SetUp.equals("1")){


        SetUp = "2";

        findTxtComp().setText(SetUp);
        ChstSetLoop = 0;
    }
    else if(SetUp.equals("2")){


        SetUp = "3";

        findTxtComp().setText(SetUp);
        ChstSetLoop = 0;
    }
    else if(SetUp.equals("3")){


        SetUp = "4";

        findTxtComp().setText(SetUp);
        ChstSetLoop = 0;
    }
    else if(SetUp.equals("4")){


        SetUp = "5";

        findTxtComp().setText(SetUp);
        ChstSetLoop = 0;

    }

    else{

        SetUp = "0";

    }
        }
    }
}

把事情放在一个无限循环中是一个很大的错误。除了耗尽电池电量外,它实际上不会工作

如果循环在EDT上,则您将有效阻止所有事件处理和绘图,从而中断您的应用程序:

如果循环位于单独的线程中,则通过在单独的线程上访问它将违反EDT


为了处理这些事情,我们有事件回调,例如按钮单击的操作事件参见

是否要包括错误?findTxtComp做什么?您永远不会更改ChstSetLoop的值,因此循环当然永远不会结束。剩下的大部分代码都毫无意义。foo=4;foo=String.valueOffoo?为什么只是foo=4?findTxtComp将找到名为txtcomp的文本框。我用的是代号一。每次按下按钮时,文本框中的数字应增加1。有两个变量SetUP,一个是整数,另一个是字符串。我算出来了。请参阅代码谢谢: