日期:2014-05-18  浏览次数:20790 次

关于winform中button的连击问题?
在做winform程序时,在button按下,处理时,在点button就不好用了怎么做啊??我现在做的效果是
即使button不好用了,我点击button,等button好用了就马上又执行了button事件。好像记录了我button
的点击一样。求各位大虾指教。在button处理时所有的点击都无效???

我现在做的是:
  /// <summary>
  /// 表示按钮処理
  /// </summary>
  private void BtnHyoJi_Click(object sender, EventArgs e)
  {

  // 連打処理:start
  buttonHandle(0);
   
  // 业务处理
  CallTransaction(null, null);

  // 連打処理:end
  buttonHandle(1);
  }

  /// <summary>
  /// 連打対応
  /// </summary>
  private void buttonHandle(int pattern)
  {
  switch (pattern)
  {
  case 0:
  // 设置鼠标 并让button不好用
  Cursor.Current = Cursors.WaitCursor;
  BtnHyoJi.Enabled = false;
  BtnPrint.Enabled = false;
  break;
  case 1:
  // 让button好用,并设置鼠标
  BtnHyoJi.Enabled = true;
  BtnPrint.Enabled = true;
  Cursor.Current = Cursors.Default;
  break;
  }
  }

------解决方案--------------------
CallTransaction(null, null);
把这句放在线程里执行