C# 如何在指定时阻止此代码循环。还有如何显示finish按钮 publicsvoid游戏() { btnCheck.Visible=true; btnNext.Visible=true; c=ran.Next(0,14); for(int i=0;i
即使将global.choices指定为1,也会不断向我询问这些问题。完成按钮不可见。我希望它在询问指定数量的问题时显示出来。您的代码无法工作,因为您从0循环到GlobalChoice-1。 但是C# 如何在指定时阻止此代码循环。还有如何显示finish按钮 publicsvoid游戏() { btnCheck.Visible=true; btnNext.Visible=true; c=ran.Next(0,14); for(int i=0;i,c#,visual-studio,loops,C#,Visual Studio,Loops,即使将global.choices指定为1,也会不断向我询问这些问题。完成按钮不可见。我希望它在询问指定数量的问题时显示出来。您的代码无法工作,因为您从0循环到GlobalChoice-1。 但是 退出循环并删除if条件。如果要显示btnfinsh按钮,可以修改for语句 如以下代码所示: btnFinish.Visible = true; 用于(int i=0;ii将始终比Global.choice小1,根据for循环逻辑,因此您正在寻找i==Global.choice-1?嵌套if中的代码
退出循环并删除if条件。如果要显示btnfinsh按钮,可以修改for语句 如以下代码所示:
btnFinish.Visible = true;
用于(int i=0;ii
将始终比Global.choice
小1,根据for
循环逻辑,因此您正在寻找i==Global.choice-1
?嵌套if中的代码是不可访问的。除非getcolor
正在更改Global.choice
。不要这样做。不要使用任何global或类似全球的。这需要“远距离行动”而且它经常会咬你。此外,当输入在循环中可能发生变化时,将其用作循环限制很少是正确的。你需要从一开始就重新思考逻辑。这是一个完美的调试问题,将全局设置为1。选择并逐步完成循环,看看i
如何变化,它需要什么值,以及在什么情况下变化此条件的哪个时间点:i
被评估,然后进行更大的重组。用户输入表单需要向父表单提供选择(作为父表单读取的属性),而父表单反过来向将使用这些选择的对象(例如运行此循环的对象)提供这些值。
btnFinish.Visible = true;
for (int i = 0; i <=choice; i++) // Change i< choice to i<=choice
{
//colour = englishColour[c];
//getColour();
if (i == choice)
{
btnfinish.Visible = true;
}
}