タイトル : 複数フォームの上下を保つ方法 投稿日 : 2011/03/07(Mon) 10:48 投稿者 : camputer
今日は、いつも勉強させていただいております。 質問させていただきます。どうぞよろしくお願いいたします。 環境:VB2008Express Edition VB歴3年強、プログラム歴10年程度 でございます。 MainFormの上に、SubForm1とSubForm2がございます。 ( SubForm1.Show(Me) SubForm2.Show(Me) の状態でございます。) SubForm2がSubForm1に隠れてしまう事があり困っておりますが、 SubForm2をSubForm1より常に上にする、といったコーディングは可能でございましょうか? 試しにMainFormから、 SubForm1.Show(Me) SubForm2.Show(SubForm1) といたしましたところ、最小化などMainFormからの操作ができなくなってしまいますし、 色々検索いたしておりましても、「孫フォームの作成はあまり良くない」といった 印象を受けている次第でございます。 あとForm2.TopMost = True といたしましても、他のエクスプローラ画面群より常に上に表示されてしまい 不便でございます。 またBringToFrontやbringwindowtopという面白そうな物も見つけましたので SubForm1.BringToFront や SubForm2.BringToFront とコーディングいたしましたが何の反応もございません。 これが反応してくれれば、何らかのイベントに反応して(?)強制的に 上下を切り替える、といった方法もありなのかな。などど考えている次第でございます。 (ただこの方法ですと画面がチカチカしそうですので、できれば SubForm2.Show(SubForm1)の状態のような感じが好ましいですが。。 SubForm2.Show(SubForm1)の状態で孫フォームをどうにかコントロールする方が 良いでございましょうか??「ハンドルを見つけて〜」といった記事も 何件か見つけましたが。。) もし何か良さそうな方法や、ヒントなどございましたら、 是非ともアドバイスいただきたくどうぞよろしくお願いいたします。 |