Winform程序请教个事件处理的问题

sdyqingdao 2010-02-01 12:06:22
我想在button1_Click()事件处理的开始,让timer1_Tick()去doA();等button1_Click()结束之前,让timer1_Tick()去doB()。

请教怎么做?
...全文
96 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hhc123 2010-02-01
我想在button1_Click()事件处理的开始,让timer1_Tick()去doA();等button1_Click()结束之前,让timer1_Tick()去doB()。
红色那些看不明白
  • 打赏
  • 举报
回复
youdandan 2010-02-01
學習
  • 打赏
  • 举报
回复
wuyq11 2010-02-01
bool b=false;
private void timer1_Tick(object sender, EventArgs e)
{
if(b)doA();
else doB();
}

private void button1_Click(object sender, EventArgs e)
{
this.timer1.Enabled = true;
....
b=true;
}
  • 打赏
  • 举报
回复
lzsh0622 2010-02-01

private string 进度="A";
private void button1_Click(object sender, EventArgs e)
{
timer1.Start();

// .....

进度 = "B";
}

private void timer1_Tick(object sender, EventArgs e)
{
if (进度 = "A")
{
// DO A
}
else if (进度 = "B")
{
// DO B
}
}
  • 打赏
  • 举报
回复
mykstar 2010-02-01
我觉得楼主是不是没说明白啊

如果想分开的话,那可以在buttondown里doA()
在buttonup里doB()
  • 打赏
  • 举报
回复
Kobayashi 2010-02-01
就在Button事件中依次写这两个事件就可以了。
private void Button1_Click(object sender, EventArgs e){
doA();
doB();
}
  • 打赏
  • 举报
回复
whslovexyp 2010-02-01
怎么知道button的事件什么时候该结束了?
搞中间变量?
private bool bDo = false;
private void timer1_Tick(object sender, EventArgs e)
{
doA();
while(boDo == false){}
doB();
this.timer1.Enabled = false;
}

private void button1_Click(object sender, EventArgs e)
{
this.timer1.Enabled = true;
...............
bDo = true;
}
  • 打赏
  • 举报
回复
ck11926375 2010-02-01

private void timer1_Tick(object sender, EventArgs e)
{
doA();
doB();
this.timer1.Enabled = false;
}

private void button1_Click(object sender, EventArgs e)
{
this.timer1.Enabled = true;
}
  • 打赏
  • 举报
回复
whslovexyp 2010-02-01
lz,timer的事件和你的button的事件可是两个线程,很难处理这个button1_Click的问题吧,万一你button_Click都结束了,但是timer还在DoA呢?
  • 打赏
  • 举报
回复
缭绕飘渺 2010-02-01
你按顺序写
程序就按顺序执行的
你最后doB()那在button1_Click()结束之前就执行这句了
  • 打赏
  • 举报
回复
相关推荐
发帖
C#

10.8w+

社区成员

.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
帖子事件
创建了帖子
2010-02-01 12:06
社区公告

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