求救.一个简单语法问题确定下 多谢!!!!

OROCHIORI514 2009-12-24 05:10:23

private void btn_pause_Click(object sender, EventArgs e)
{
UpdateDB s = new UpdateDB(lb_serialNumber, btn_stop, gbx_typedetail);
btn_start.Enabled = false;

if (btn_pause.Text == "暂停")
{
btn_stop.Enabled = true;
btn_pause.Text = "继续";

printCancel = true;
return;
}
if (btn_pause.Text == "继续")
{
btn_stop.Enabled = false;
btn_pause.Text = "暂停";

int y = Convert.ToInt32(tbx_batchnumber.Text);

cyclicEnd = false;
printCancel = false;
btn_pause.Enabled = true;

btn_configtype.Enabled = false;
btn_savetype.Enabled = false;

//打印数量
countNumber = Convert.ToInt32(tbx_batchnumber.Text.ToString());

//方案名称
projectName = tbx_typename.Text;

//打印总数
countNumber = Convert.ToInt32(tbx_batchnumber.Text.ToString());

for (printNumberA = 0; printNumberA <= countNumber; printNumberA++)
{
if (cyclicEnd == true)
{
break;
}

if (statusBar == countNumber)
{
btn_pause.Enabled = false;
s.ShowForm(Convert.ToString(batchNo), countNumber);
break;
}

//防主界面硬直状态
Application.DoEvents();

//开始打印进程
pdBays.Print();

//当前进程挂起5秒 打印进度
Thread.Sleep(5000);

//打印进度
lbl_printstatus.Text = "进度: 第" + Convert.ToString(statusBar) + "/共" + Convert.ToString(countNumber);
}
}



上面的 if (statusBar == countNumber)
里面执行后弹出新窗口,然后关闭新窗口之后。这个FOR循环还继续么? 注:
s.ShowForm(Convert.ToString(batchNo), countNumber)后面有break;
我不清楚break是退出的该if语句 还是退出的整个FOR循环
急!!! 
感谢!!!!!!!!!!!!!!!!!
...全文
189 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
ilyyyfn 2009-12-24
  • 打赏
  • 举报
回复
break退出外层的第一个循环
wuyq11 2009-12-24
  • 打赏
  • 举报
回复
退出for循环
OROCHIORI514 2009-12-24
  • 打赏
  • 举报
回复
谢谢各位 回家了 结贴!
shighui 2009-12-24
  • 打赏
  • 举报
回复
是退出某个循环
十八道胡同 2009-12-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 orochiori514 的回复:]
还有个细节问题 就是执行完s.ShowForm(Convert.ToString(batchNo), countNumber)以后 应该能执行到break;这条吧
[/Quote]
可以
十八道胡同 2009-12-24
  • 打赏
  • 举报
回复
退出离自己最近的那层循环
RubbyZK 2009-12-24
  • 打赏
  • 举报
回复
是可以执行到break的
RubbyZK 2009-12-24
  • 打赏
  • 举报
回复
break 是退出当前的循环。只能退出离自己最近的循环,而不能退出所有的循环。

例如下面的嵌套循环:
for(int i=0;i<100;i++)
{
for(int j=0;j<100;j++)
{
//do something...;
break;
}
}
这里的break是退出j循环,而不能退款i循环。
OROCHIORI514 2009-12-24
  • 打赏
  • 举报
回复
重装系统了 没办法调试了 我想知道能执行到那个break么
风之影子 2009-12-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 orochiori514 的回复:]
还有个细节问题 就是执行完s.ShowForm(Convert.ToString(batchNo), countNumber)以后 应该能执行到break;这条吧
[/Quote]

可以
liaoyukun111 2009-12-24
  • 打赏
  • 举报
回复
UP[Quote=引用 12 楼 alifriend 的回复:]
你自己下断点一条一条跟吧,这样问你永远也不懂
[/Quote]
波导终结者 2009-12-24
  • 打赏
  • 举报
回复
你自己下断点一条一条跟吧,这样问你永远也不懂
silentwins 2009-12-24
  • 打赏
  • 举报
回复
if没必要break,当然是for了
OROCHIORI514 2009-12-24
  • 打赏
  • 举报
回复
还有个细节问题 就是执行完s.ShowForm(Convert.ToString(batchNo), countNumber)以后 应该能执行到break;这条吧
wangan2008 2009-12-24
  • 打赏
  • 举报
回复
if结束 就out了。、
Lucky_6Q 2009-12-24
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 fengjian_428 的回复:]
break是退出循环
[/Quote]正解
ivws_19 2009-12-24
  • 打赏
  • 举报
回复
退出目前的for循环,也就是for (printNumberA = 0; printNumberA <= countNumber; printNumberA++)
{
qingYun1029 2009-12-24
  • 打赏
  • 举报
回复
帮顶啦!!
fengjian_428 2009-12-24
  • 打赏
  • 举报
回复
break是退出循环
kele2005 2009-12-24
  • 打赏
  • 举报
回复
推出整个For循环
加载更多回复(3)

111,120

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧