- PR -

割り込み処理を入れるには?

1
投稿者投稿内容
にいやん
会議室デビュー日: 2005/01/25
投稿数: 12
投稿日時: 2005-01-25 13:36
C#を始めてまもないので、低レベルかもしれませんが、
よろしくお願いします。
ループ処理の中で、処理中に、ボタンが押下されたら
処理を抜けるプログラムを作成しているのですが、
割り込み処理のやり方がわかりません。
以前はDELPHIをやっていて、そのときは、
Application.ProcessMessagesというのがあったのですが。
よろしくお願いいたします。

(例)

for (;;)
{

if (gbClick == true)
{
break;
}

// 処理
:
:

}

private void button1_Click(object sender, System.EventArgs e)
{
gbClick = true;
}


[ メッセージ編集済み 編集者: にいやん 編集日時 2005-01-25 13:37 ]
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2005-01-25 13:42
時間のかかる処理をGUIとは別のスレッドで行うようにします。
後は貴方の書いた例のように変数を参照する方法で問題ないはずです。
_________________
甕星 <mikahosi@abox9.so-net.ne.jp>
http://blogs.msmvp.jp/mikahosi/
xxななおxx
ベテラン
会議室デビュー日: 2005/01/18
投稿数: 61
お住まい・勤務地: 東京(練馬)
投稿日時: 2005-01-25 13:55
別スレッドで処理させるのが
C#らしいくきれいだと思います。

他の方法で、”Application.ProcessMessages”に似ている
Application.DoEvents() というのが.NETにあります。
これをループ内に記載すると
同様のことができると思います。
にいやん
会議室デビュー日: 2005/01/25
投稿数: 12
投稿日時: 2005-01-25 14:12
甕星さん、xxななおxxさん
ありがとうございます。

うまくいきました。

また、よろしくお願いいたします。
1

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