フォーカスを強制的に移動するには?


バカ本  2006-06-30 19:17:33  No: 95897

Windows2000、VB6.0、ActiveReport2.0で開発をしております。
メニュー画面から処理画面を起動(メニュー画面は開いたまま)し、
処理画面から実行ボタン押下にて実行処理&印刷をするプログラムになっています。
印刷はある条件を満たさなかった場合、帳票側でキャンセル処理(Me.Cancel)をしています。
処理が印刷が終わったら(実行処理していても)フォーカスを処理画面のテキストボックスに移動させるようにしています。しかし、印刷がキャンセル処理された場合にフォーカスがどこか行ってしまいます。
screen.activecontrol.nameで調べてみた結果フォーカス移動させたいテキストになっていたのですが、フォーム自体がアクティブになっていない為、うまくいきません。
何か対処法などありますでしょうか?


バカ本  2006-06-30 20:30:49  No: 95898

調べた結果 Alt + Tab を押すとActiveReport1というのが存在していて、
どこか他の場所にフォーカスが移動するとActiveReport1が消えます。
Cancel処理だけだと上手くActiveReportが閉じないのでしょうか?


するー  2006-07-08 21:38:48  No: 95899

どんな処理やってるのかわかりませんが

Form1
Private Sub Form_Click()
    Form2.Show
End Sub

Form2
Private Sub Form_Click()
    Me.Hide
    AppActivate Form1.Caption
End Sub

こういうのじゃダメですか?


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加