- PR -

長い処理中にボタンを複数回クリック

投稿者投稿内容
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2005-04-22 09:36
引用:

るぱんさんの書き込み (2005-04-22 09:13) より:
Application.DoEvents();
を行っても結果は同じでした


これ、どこに入れました?
Enabled = falseの状態でApplication.DoEvents()すれば、
実質的ににイベントを破棄できるはずなんですが…
※なんか勘違いしてるかな…

[ メッセージ編集済み 編集者: なちゃ 編集日時 2005-04-22 09:40 ]
るぱん
会議室デビュー日: 2003/07/28
投稿数: 5
投稿日時: 2005-04-22 10:47
引用:

なちゃさんの書き込み (2005-04-22 09:36) より:
これ、どこに入れました?
Enabled = falseの状態でApplication.DoEvents()すれば、
実質的ににイベントを破棄できるはずなんですが…
※なんか勘違いしてるかな…

[ メッセージ編集済み 編集者: なちゃ 編集日時 2005-04-22 09:40 ]


お返事ありがとうございます
以下のように記述しました
private void button1_Click(object sender, System.EventArgs e)
{
Application.DoEvents();
this.button1.Enabled = false;
System.Threading.Thread.Sleep(2000);
System.Diagnostics.Trace.WriteLine("in");
this.button1.Enabled = true;
}
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2005-04-22 11:03
引用:

るぱんさんの書き込み (2005-04-22 10:47) より:
以下のように記述しました
private void button1_Click(object sender, System.EventArgs e)
{
Application.DoEvents();
this.button1.Enabled = false;
System.Threading.Thread.Sleep(2000);
System.Diagnostics.Trace.WriteLine("in");
this.button1.Enabled = true;
}


キャーん、私の投稿で
> this.button1.Enabled = true;
> の直前に
> Application.DoEvents();
と書いているように、
this.button1.Enabled = ※true※;
の直前に入れてください。
るぱん
会議室デビュー日: 2003/07/28
投稿数: 5
投稿日時: 2005-04-22 11:11
引用:

なちゃさんの書き込み (2005-04-22 11:03) より:
キャーん、私の投稿で
> this.button1.Enabled = true;
> の直前に
> Application.DoEvents();
と書いているように、
this.button1.Enabled = ※true※;
の直前に入れてください。



お返事ありがとうございます。
すいません勘違いしていたようですね。。
Enabled = trueの前に追加したらうまくいきました
ありがとうございました

Enable = trueになる前にたまっていた処理をすべて
処理してしまうと言うことですね

スキルアップ/キャリアアップ(JOB@IT)