- 題名: MDIコンテナについて
- 日時: 2005/05/27 9:08:37
- ID: 10967
- この記事の返信元:
- (なし)
- この記事への返信:
- [10970] Re[1]: MDIコンテナについて2005/05/27 9:35:58
- ツリーを表示
こんにちは、じゃんぬ です。
■No10967に返信(たくさんの記事)
> MDIフォームについてですが、
> FrmMainというフォームをMDIコンテナにしてあり、
> FrmMainから子フォームFrmChildを開くときは下記の記述で良いのですが、
> FrmChild.MdiParent = Me
> ↑これのMeを別のフォーム名を使うことはできないのでしょうか?
どのクラスからの呼び出しで、ですか?
FrmMain のインスタンス == Me という解釈でよろしいんですか?
大事なところが暗黙に書かれてないですが。
> なにがやりたいかというと、MDI子フォームから他の子フォームを開きたいのです。
___________________________________________________________________
Option Strict On
Public Class FormMenu
Inherits System.Windows.Forms.Form
' ________________________
'| Windows フォーム デザイナで生成されたコード |
'  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
Private Sub Button1_Click(...) Handles Button1.Click
Dim hFormChild As New FormChild()
Me.IsMdiContainer = True
hFormChild.MdiParent = Me
hFormChild.Show()
End Sub
End Class
___________________________________________________________________
Option Strict On
Public Class FormChild
Inherits System.Windows.Forms.Form
' ________________________
'| Windows フォーム デザイナで生成されたコード |
'  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
Private Sub Button1_Click(...) Handles Button1.Click
Dim hFormGrandchild As New FormGrandchild()
hFormGrandChild.ShowDialog()
End Sub
End Class
___________________________________________________________________
こういう意味ではなく、MDI の中に MDI を作るというのであれば、
UI の設計を見直してください。
> メイン画面の中にメインメニューがあって、
> メインメニューからも子フォームを開きたいのです。
その子フォームが別インスタンスであれば、問題ないです。
分類:[.NET]
いつも参考にさせていただいています。 ありがとうございます。
MDIフォームについてですが、
FrmMainというフォームをMDIコンテナにしてあり、
FrmMainから子フォームFrmChildを開くときは下記の記述で良いのですが、
FrmChild.MdiParent = Me
↑これのMeを別のフォーム名を使うことはできないのでしょうか?
FrmChild.MdiParent = FrmMain(こんな感じで)
なにがやりたいかというと、MDI子フォームから他の子フォームを開きたいのです。
メイン画面の中にメインメニューがあって、メインメニューからも子フォームを開きたいのです。
ちょっと解りにくい質問ですが、宜しくお願いします。