0

我想做一个小型计算器。这个计算器会随机选择 1 到 1000 之间的数字,你必须回答它们。你会从好的和错误的答案中得分。只要我只运行一次,一切正常。

如果我设置一个循环,它只允许我最后一次回答。如何让我的程序在每个循环后停止?我试图将焦点设置到您应该给出答案的文本框,但直到最后一个循环完成后才设置焦点。

for (int i = 1; i <= 5; i++)
{
    txtResultaat.Focus();
}

显然,这使它在循环中运行了 5 次,但它只让我有机会在文本框中输入一些内容。有人对此有解决方案吗?

4

3 回答 3

0

另一种设计(使用 while 循环而不是 for 循环)使其工作。

于 2012-12-11T18:43:41.437 回答
0

好吧,如果我想严格地讲理论,那么您的问题的答案是:使用break指令。

for (int i = 1; i <= 5; i++)
{
    txtResultaat.Focus();
    break;
}

这将实现您的要求:

谁能告诉我如何让我的程序在每次循环后停止?

如果它能让你的程序正确运行并做你想做的事……那我的朋友,是另一回事。

于 2012-12-09T21:37:36.937 回答
0

好吧,您根本没有告诉程序实际停止,因为您只是让它循环 5 次,并且每次都将焦点设置到文本框。一个更好的方法是维护某种计数器,记录他们到目前为止已经回答了多少次(对于这个级别的程序来说,全局变量是最简单的。然后在程序加载时让程序要求第一个数字,然后让该事件结束。当用户单击答案按钮时,在按钮事件中您确定他们是对还是错。然后在事件结束时,您输出新问题。

于 2012-12-09T21:23:48.213 回答