- PR -

MDIウィンドウににつきまして

1
投稿者投稿内容
Soybean
会議室デビュー日: 2005/09/13
投稿数: 6
投稿日時: 2006-10-20 20:45
いつもお世話になっております。
MDIを使ってシステムを開発することになりました。

過去のスレッドも調べましたが、
わかないのでご存知の方がいらっしゃいましたら
ご教授ください。

子画面のClosedのイベントを親画面で取得する方法が
わかりません。
よろしくお願い致します。
まどか
ぬし
会議室デビュー日: 2005/09/06
投稿数: 372
お住まい・勤務地: ますのすし管区
投稿日時: 2006-10-20 21:08
引用:

子画面のClosedのイベントを親画面で取得する方法が
わかりません。


#環境が一切か書かれていませんよ。

難しく考えずに
子のインスタンスを変数に保持してイベントをハンドルすればよいです。
Soybean
会議室デビュー日: 2005/09/13
投稿数: 6
投稿日時: 2006-10-20 21:46
まどか様

早速の返信ありがとうございました。
言語は、VB.netを使用しております。

>子のインスタンスを変数に保持してイベントをハンドルすればよいです。

早速試してみました。


Dim fm As New formChild まず、子画面のインスタンスを変数にセットしました。

しかし、このfmからAddHandlerのメソッドが呼び出されません。

初歩的な質問で申し訳ございませんが、
イベントをハンドルする方法のご教授の程、
よろしくお願い致します。

masa
大ベテラン
会議室デビュー日: 2004/10/28
投稿数: 161
投稿日時: 2006-10-20 21:52
> Dim fm As New formChild まず、子画面のインスタンスを変数にセットしました。

この fm は、表示しているものと同一インスタンスですか?
「インスタンス」については検索するなどしてください。

実際に表示している formChild のインスタンスに
^^^^^^^^^^^^^^^^^
 AddHandler インスタンス.Closed, AddressOf ハンドラ

としてハンドラを定義していますか?

ダッチ
大ベテラン
会議室デビュー日: 2005/10/31
投稿数: 113
投稿日時: 2006-10-20 21:52
ダッチです。

引用:

Dim fm As New formChild


ローカル変数ということは
動的に生成しているということですね。

コード:

Private Sub formChild_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs)

End Sub


このようなメソッドを作成しておいて

コード:

Dim fm As New formChild
AddHandler fm.FormClosed, AddressOf formChild_FormClosed


とすれば fm の FormClosed イベントが formChild_FormClosed メソッドに飛んできます。

masa さんとかぶっちゃいました。

[ メッセージ編集済み 編集者: ダッチ 編集日時 2006-10-20 21:54 ]
Soybean
会議室デビュー日: 2005/09/13
投稿数: 6
投稿日時: 2006-10-23 09:22
masa様、ダッチ様

ありがとうございました。
ご教授頂きました方法で解決致しました。

またよろしくお願い致します。
1

スキルアップ/キャリアアップ(JOB@IT)