いつも勉強させてもらっています。
↑失敗しました!!
続けての質問になってしまいますが、
VBで作成した画面からあるA.EXEを呼び出し、
A.EXEは画面のない処理とします。
その場合、A.EXE処理中に砂時計を表示したいのですが
画面のないEXEで砂時計を表示することは可能でしょうか?
ちなみに呼び出し元のほうは画面を最小化しています。
宜しくお願いいたします。
回答ではなくてヒントになりますが、
考え方を変えて
「A.EXEでの処理中に砂時計表示」
ではなく、
「A.EXEに処理を渡す前にB.EXEで砂時計を表示、
B.EXEに処理が戻ってきたら砂時計解除」
※B.EXEは呼び出し元
にしても外見的には問題ないと思います(^^)/
呼び出し元は画面を最小化しているので砂時計表示できるか
どうか分かりません。
一応参考までに。。
チップ集にフォームの外のマウスポインターを指定する方法がありましたので参考までに。最小化してもそのままでした。
Private Const IDC_APPSTARTING = 32650&
Private Const IDC_ARROW = 32512&
Private Const OCR_NORMAL = 32512&
Private Declare Function LoadCursor Lib "user32" Alias "LoadCursorA" (ByVal hInstance As Long, ByVal lpCursorName As Long) As Long
Private Declare Function SetSystemCursor Lib "user32" (ByVal hcur As Long, ByVal id As Long) As Boolean
Private Sub Command1_Click()
'このボタンを押すとポインタが変わる
Dim hcursor As Long, ret_val As Long
hcursor = LoadCursor(0, IDC_APPSTARTING)
ret_val = SetSystemCursor(hcursor, OCR_NORMAL)
End Sub
Private Sub Command2_Click()
Dim hcursor As Long, ret_val As Long
hcursor = LoadCursor(0, IDC_ARROW)
ret_val = SetSystemCursor(hcursor, OCR_NORMAL)
End Sub
ツイート | ![]() |