投稿日 | : 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は溜まったキューの内容を処理するはずなのに
何故一度ではきちんと反映されないのでしょうか!?
宜しくお願いします。