VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/04/21(Thu) 14:08
投稿者しげちー
Eメール
URL
タイトルDoEventsについて

どなたかご存知の方がいらしたら教えて下さい。

Win2000 Execel2000のVBAで『DoEvents』の仕様に関してなのですが
MSDNライブラリや他のサイト等を見た限り
一度宣言すれば、制御をアプリケーションから別処理に渡し
キューに溜まっている処理が実行されると思っています。

例えば再描画を行う処理

CommandButton1.Enabled=False

do while
    処理
loop

−@−

MsgBox

CommandButton1.Enabled=True

このままだとボタンのEnabledがきちんと描画されないので
@の個所に『DoEvents』を入れ再描画させるのは分かるのですが
これが『DoEvents』を入れただけでは反映されません。

DoEvents
DoEvents

と連続させるかTimerなどを使用しループさせないと駄目みたいです…
DoEventsは溜まったキューの内容を処理するはずなのに
何故一度ではきちんと反映されないのでしょうか!?
宜しくお願いします。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -