はじめまして、宜しくお願いします。
現在Access2002でDBはSQLサーバーを使って、
下記のことを実行しようと思っております。
やりたいことは、タイトルにも書いたように、
処理中にメッセージを出したいのですが、思うようにできず行き詰っております。
やっていることは
処理開始というコマンドボタンを作成して、そのクリックイベントに
下記のようなソースを記述します。
Private Sub 処理開始_Click()
Dim i As Long
Dim X As Long
Me!処理中表示ラベル.Visible = True
SysCmd acSysCmdInitMeter, "只今、処理中です…", 100
For i = 0 To 1000000
X = X + 1
SysCmd acSysCmdUpdateMeter, i
Next i
SysCmd acSysCmdRemoveMeter
Me!処理中表示ラベル.Visible = False
MsgBox X
End Sub
処理が始まる前に
Me!処理中表示ラベル.Visible = True
でラベルを表示して、
Me!処理中表示ラベル.Visible = False
でラベルを非表示にしているのですが、処理中にラベルが表示されません。
仕方がないのでクリックイベント以外の先に行われるマウスダウンイベントに
Private Sub コマンド0_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me!ラベル1.Visible = True
End Sub
を書くと表示されるのですが
他の用途も考えて
やはりクリックイベントの中で行いたいと思っております。
基本的な部分で見落としているところがあるかもしれませんが
なにか気づかれた方はご教授ください。
宜しくお願いします。
お礼
早速のレスありがとうございます。 Hawk-Wさんの言う通りやってみましたらできました! コードの実行中はOSからの命令は実行待ちになるのですか。。 画面の再描画がOSからの要請によるものだと知りませんでした。 まだまだ、勉強不足です。 大変勉強になりました。 本当にありがとうございます。