VBAのユーザーフォームでRepaintにDoEventsを使用する利点は何ですか? 画面のちらつきなどの煩わしさを最小限に抑えるため、または単にフォーム以外のものを更新する必要がある場合は、パフォーマンスが原因ですか?VBAのユーザーフォームでRepaintにDoEventsを使用する利点は何ですか?
VBAの視点との違いを明確にしています。
VBAのユーザーフォームでRepaintにDoEventsを使用する利点は何ですか? 画面のちらつきなどの煩わしさを最小限に抑えるため、または単にフォーム以外のものを更新する必要がある場合は、パフォーマンスが原因ですか?VBAのユーザーフォームでRepaintにDoEventsを使用する利点は何ですか?
VBAの視点との違いを明確にしています。
一般に、VB6とVBAはDoEventsを使用して、メッセージキュー内のメッセージの処理を続行するようプロセッサに指示します。これは、集中的な処理操作がプロセッサで実行されているときに使用されるため、プログラムのUIは他のすべてのイベントに応答します。
例:集中的な検索アルゴリズムを実行していますが、DoEventsを追加しなかった場合、プログラムは検索が終了するまでハングアップする可能性があります。一方、検索ループにDoEventsを追加すると、プログラムはハングアップせず、検索をキャンセルする(キャンセル)のようなすべてのプログラムイベントを処理できます。
EDIT:UIのフリッカー/ハングアップを処理するだけでなく、すべてのイベントタイプを処理するので、DoEventsはRepaintより包括的です。
Repaintメソッドをもう少し扱うために回答を編集できますか?私はあなたに受け入れられた答えを授与します。 –
ありがとう。 –