Sub MainでOpenFileDialogを呼び出すと、Formが前面に表示されない


シャンメル  2009-10-07 06:11:10  No: 142624

こんばんは。
VB2008を使っています。
スタートアップをモジュールファイルのSub Main()にして、以下のようにOpenFileDialogを使って、
ファイルを開くダイアログを表示しようとしています。
(今後、OpenFileDialogでキャンセルを行った場合などの処理を入れる予定です。)

Public Sub Main()
    Using ofd As New System.Windows.Forms.OpenFileDialog
        If ofd.ShowDialog = Windows.Forms.DialogResult.Cancel Then
            '処理を行う
        End If
    End Using

    Application.Run(New Form1)
End Sub

しかし、Application.Run(New Form1)でForm1が開く時、画面の前面に開かず、後ろに隠れてしまいます。
OpenFileDialogの部分をコメントアウトすると、Form1は画面の前面に開きます。
どのようにすれば、Form1を開く前にOpenFileDialogを表示することができるでしょうか?
宜しくお願い申し上げます。


シャンメル  2009-10-07 20:20:16  No: 142625

今、対策として、Form1のLoadイベントに、
Me.Activate()
を一行書き込んだところ、OpenFileDialogを表示後に、Form1が前面に開きました。
しかし、これは問題ないのでしょうか?
Loadイベントが発生するときは、Formが開いているのか、そうでないのかよく分からなかったので...
宜しくお願い申し上げます。


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

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






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