ページ 11

自ソフトのウィンドウが表示されない

Posted: 2010年6月08日(火) 17:23
by tosiyori
RADツールで フォームを作成し 勉強してます
しかし ソフトを起動すると 画面表示がありません

ループを使用して 30分になったら 処理をしたいのですが
Window表示が 出なくて困ってます
よろしく お願いします

sub getTime()
Dim st As SYSTEMTIME
dim minute as Integer

Beep(600,1000)
ShowWindow(hMainWnd,SW_SHOW)

Do
Sleep(2000)
GetLocalTime(st)
minute=st.wMinute
if minute = 30 then exit Do
Loop

--処理----
End Sub

Posted: 2010年6月08日(火) 17:46
by abw
ウインドウが表示されないということですが、まず作成したウインドウ、
これのウインドウプロパティの可視にチェックが入っていることを確認します。

チェックが入っているのに表示されなければウインドウスタイルがチャイルドになっていませんか?
これをオーバーラップにします。

これでも表示されなければウインドウのタイプがモードレスまたはモーダルになっていると思いますので通常ウインドウにチェックをいれます。

これでも表示されないなら、あなたのコードに何か原因があると思われます。

getTime()がどこから呼ばれているのかわかりかねますが、
これがサブスレッドでなければそのプログラムは処理をメッセージループに返しませんので、フリーズします。。。

よってタイマーイベントに切り替えるか、サブスレッドで処理しなければいけません…

ありがとう ございます

Posted: 2010年6月09日(水) 17:18
by tosiyori
引越しをしていて お礼が遅くなりました。すみません。


SetTimer(hMainWnd,ID_TIMER,5000,0) と

Sub MainWnd_Timer(TimerID As Long)
   getTime()
End Sub

を 組み合わせて OKになりました

お世話になりました