VB.NETの環境です。
NewWindow2などで新しいフォームを開かせることはできましたが
開いた元のフレームを閉じてしまうと新しく開いたフォームまで
閉じてしまいます。これを回避する手段はありませんでしょうか?
よろしくお願いします。
呼び出しもとのフォームをCloseするとそのフォームから呼び出された
フォームは全て閉じられます。
そういう時はHideを使いましょう。
又、呼び出されたフォームを閉じるときに呼び出しもとのフォームを
Showすることも忘れずに。
すいません!!!
すぐ下で議論されてました!!!><
Private Sub WebBrowser1_NewWindow2(ByVal sender As Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_NewWindow2Event) Handles WebBrowser1.NewWindow2
Dim form2 As New Form1
e.ppDisp = form2.WebBrowser1.Application
form2.Visible = True
End Sub
という形でウェブブラウザというため必要としておりました。
下のを参考に考えてみます。m(_ _)m
皆様ありがとうございました。
ブラウザという特性から何時何個ウインドウが開かれる(閉じられる)
かが不明なため他にフォームを用意しておくという手法がとれないため
下記のような手法で解決いたしました。
*/
1:開いたHPのURLを一時ファイルを作りその中に記述させる
2:今まで通りNewWindow2を使用し、フォームを立ち上げさせる
立ち上げたフォームはHideにしておく。
3:指定したEXE(このプログラム)を起動させ、一時ファイルの中の
URLを読み込みに行き、ナビゲートする。
4:読み込みが終了した一時ファイルの中身を消す。
/*
弊害としては「同じプロセス名のexeが複数タスクマネージャーに入る」や
「リソースを多く食う」などがありますが、今回は希望の動作をしました
のでこの手法をとりました。
ツイート | ![]() |