• ベストアンサー

特定のフォームが開いているか確認したい。

Form1、Form2が開いている状態で、Form3が開いているかどうか(アクティブかどうか関係なく開いてるか開いていないかだけ)確認したい場合どのように書けばよいのでしょうか。 環境はVB.NETです。

noname#45614
noname#45614

質問者が選んだベストアンサー

  • ベストアンサー
noname#77845
noname#77845
回答No.1

フォームを開くときに、プロパティを追加しコードをフォームモジュールに追加します。 http://www7.big.or.jp/~pinball/discus/vb/60923.html こうすると、フォームを開いているかどうかは、プロパティを確認すればOKかと…。

noname#45614
質問者

お礼

おかげで解決しました。 どうもありがとうございます。

関連するQ&A

  • フォームのクローズについて

    vb6.0においてのフォームについて教えてください。 例として「Form1」という名前のフォームがあるとします その「Form1」を閉じるためのコマンドを誰か教えていただけないでしょうか? ちなみに「Form1」はアクティブになっている時、いない時両方の場合が 考えられるのですが、関係あるのでしょうか?? 皆様宜しくお願いします。

  • VB.Netのフォームロードイベントについて

    こんにちわ。 いまVB.Net2005Expressで勉強をしている者です。 あるフォームがロードされるときの処理を書こうとすると, 従来のVB6ではFormオブジェクトにLoadイベントがありましたが, VB.Net2005では,最初の状態ではフォームのイベントには 「New」,「Finalize」,「InitializeComponent」の3つしかありません。 もしVB.Net2005でForm_Loadイベントを書きたいときは, 自分で, 「Private Sub Form1_Load(Byval ~」と書かなくてはいけないのでしょうか? 初歩的な質問になるかもしれませんが,教えてください。 よろしくお願いします。

  • VB2010 フォームのリロード

    今までVB6.0でプログラミングをしていた者で、最近VB2010に開発環境を変えました。さっそくソフトを開発しているのですが、フォームのリロードが必要なところがあったためそこのプログラムをネットなどで参考にして書いてみたのですがどうしてもエラーがでます。 今までVB6.0ではその部分を Private Sub Command1_Click() Set Form1 = Nothing Call Unload(Me) Form1.Show End Sub と、記載していました。これをVB2010のコードに書き換えるとどのようになるのでしょうか。 ご回答よろしくお願いいたします。

  • フォームが閉じない

    vb2010を使用してます。 dim f1 as form dim f2 as form f1.show f2.show とした場合に、f2をf2自身から閉じようとすると、「他のスレッド~」と なりエラーになってしまいます。 こうゆう場合は自身で閉じることは出来ないのでしょうか?

  • MDIでフォームがアクティブにならない

    VB2008です。 MDIフォーム中にForm1とForm2があります。 Form1がアクティブです。 Form2をクリックしてもアクティブになりません。ただしタイトルバーをクリックするとアクティブになります。 これは言語の仕様でしょうか。市販のアプリケーションでは、タイトルバー以外の場所をクリックしてもアクティブになるものがほとんどですが、VB2008ではどのようにすれば実現できるのでしょうか。

  • 開く前のフォームを開かないようにしたい

    現在、VB2010で、Windowsアプリを作っています。 Form1から、ボタンで画面遷移を行っているのですが、 Form2でデータを作成する前にForm3に移動しないように MessageBoxで画面表示をさせてからMe.Close()を試したのですが、 Form1の方が閉じてしまい、Closeしない場合はForm3が 立ち上がってしまいます。 何とか、Form1はそのままでForm3が立ち上がらないように したいのですが、いい方法はないでしょうか?

  • VB.Net 3つのフォームのうち1つを制御できないように。。?

    VB.Net 3つのフォームのうち1つを制御できないように。。?  今晩は,いつもいつも勉強させていただいております. どうぞよろしくお願いいたします. 開発環境:VB2008+XP になります。  Form1上のButton1を押したときにForm2とForm3を 呼び出しておいて、その間Form1を制御できないように したいです。(その間Form1のコードは待機。 かつForm2とForm3はメッセージのようにForm1の下へは 移動しないようにしたいでございます)。 そこで    Sub Button1_Click(・・・     Form2.ShowDialog        :        :    End Sub などといたしますと、Form3が制御できなくなってしまいましたorz また、↓でDo~Loopで待つ方法をご親切に教えていただき http://okwave.jp/qa/q5583412.html?order=&by= うまくいきそうだったのでございますが、Form3がForm1の 後ろに隠れたりForm1をいくらでも触れてしまいます。。orz  どうにか、2つのFormだけ制御可能にしてForm1を待機させる方法は ないものでございましょうか?検索いたしておりますと 「2つのモーダルが可能かどうか~・・」といったようなQ&Aも見かけたのですが 理解できませんでしたorz  もしお詳しい方がいらっしゃいましたら、是非ともアドバイスいただきたく どうぞよろしくお願いいたします。

  • 子フォームから開いたフォームと親子関係を結びたい(VB2003)

    子フォームから開いたフォームと親子関係を結びたい(VB2003) VB.NET2003についての質問です。 formMain のクラスに以下のコードを書いて実行させると、form1がformMainの子フォームとして開きます 下記は、「form1」を「formMain」の子フォームとして開くコードです。 (formMainクラス内のコードです)   ------------------------------   Dim f As New form1   Me.IsMdiContainer=True   f.MdiParent=Me   f.Show   ------------------------------ form1には、form2を開くボタンが用意されています。 質問内容は、このform2を、formMainの子フォームとして開くにはどうすればよいか、ということです。 ためしに、form1クラスに以下のコードを書いて実行させたところ、 「formMainは型であるため、式として利用することができない」というエラーメッセージが出てしまいました。   ------------------------------   Dim f As New form2   f.MdiParent = formMain   f.Show()   ------------------------------ 以上、よろしくお願い致します。

  • フォームを常に手前に表示する

    環境:WindowsXP VB6 form1からform2を表示させるのですが、form2を常にform1よりも手前に表示させたいと思っています。 表示は手前ですが、コントロールを常に固定したいわけではありません。 モーダルモードで表示するとform1が使用できなくなってしまいます。 解決方法としてどのようにしたらよいでしょうか?

  • VB6.0のフォーム間の関数呼び出しについて

    VB6.0のフォーム間の関数呼び出しについて いつもお世話になっております。 これまでVB2005で開発を行ってきたのですが、 これまでの資産の関係上VB6.0での開発を行う必要が出てまいりました。 現在下記のようになっております。 フォーム1:Form1    関数:keisan フォーム2:Form2 Form1ではテキストボックスコントロールを利用した関数keisanがあります。 その関数をForm2上から呼び出すことは可能でしょうか? 以下のやり方では実行できそうでしょうか? call Form1.keisan 初歩的な質問で申し訳ございません。 なにとぞアドバイスをいただけると幸いです。

専門家に質問してみよう