[Access-VBA] ビジーカーソル(旧・砂時計)に切り替える(DoCmd.Hourglass)

Pocket

ここでは、Access-VBA でカーソルをビジーカーソルに切り替えるサンプルスクリプトを掲載しています。

一般的には、処理に時間がかかる場合など、カーソルをビジーカーソルに切り替えてユーザーに処理中や待ち状態である旨を認識させたい場合に活用されています。

スポンサーリンク

ビジーカーソルに切り替える

次は、カーソルをビジーカーソルにして、元に戻すサンプルスクリプトです。

    ' ビジーカーソルに切り替える
    DoCmd.Hourglass True
 
    '
    ' 何か時間のかかる処理
    '

    ' ビジーカーソルから元に戻す
    DoCmd.Hourglass False

非常に簡単にできることがわかります。流石の Access です。

Hourglass(砂時計)?

上記のように、DoCmd.Hourglass 関数でカーソルをアイキャッチ画像のように簡単に切り替えることができます。ただし、元のカーソルに戻し忘れるとずっと作業中のようになってしまいますので、注意が必要です。

ところで、青の輪がクルクル回っているカーソルなのに、なぜ「砂時計(Hourglass)」と呼ぶのでしょうか?

実はWindowsXPまでは、上記のスクリプトを実行すると、次のようにカーソルは砂時計になっていました。

砂時計カーソル

ところが、Windows Vista 以降で、待ち状態や作業中を表すカーソルは、現在のビジーカーソルと呼ばれるカーソルに変更されました。しかし、VBA の関数名などの変更はできない(互換性の問題)ため、WindowsXPまでの名残が今でも残っていることになります。

 

スポンサーリンク


Pocket

Leave a Comment

Your email address will not be published. Required fields are marked *