2010-11-28 63 views

答えて

6

一般に、VB6とVBAはDoEventsを使用して、メッセージキュー内のメッセージの処理を続行するようプロセッサに指示します。これは、集中的な処理操作がプロセッサで実行されているときに使用されるため、プログラムのUIは他のすべてのイベントに応答します。

例:集中的な検索アルゴリズムを実行していますが、DoEventsを追加しなかった場合、プログラムは検索が終了するまでハングアップする可能性があります。一方、検索ループにDoEventsを追加すると、プログラムはハングアップせず、検索をキャンセルする(キャンセル)のようなすべてのプログラムイベントを処理できます。

EDIT:UIのフリッカー/ハングアップを処理するだけでなく、すべてのイベントタイプを処理するので、DoEventsはRepaintより包括的です。

+0

Repaintメソッドをもう少し扱うために回答を編集できますか?私はあなたに受け入れられた答えを授与します。 –

+0

ありがとう。 –

関連する問題