- - PR -
別exe間のmdi
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-07-27 16:43
いつもお世話になっております。
1つご教授願いたいことがあります。 今、メインメニューからマスタを開くという処理をいれているのですが (メインメニュー、各マスタは、別exeになっています。) この状態で、メインメニューを親フォーム、マスタを子フォームの関係にできるのでしょうか!? 同じexe内のフォーム同士であれば、できるとは思うのですが、別exeだとできないきがするのですが・・・。 もし、やり方等を知っている方がいらっしゃいましたら、ご教授お願いいたします。 | ||||||||
|
投稿日時: 2006-07-27 17:02
開発環境が書いてありませんが、該当アセンブリを参照設定して フォームを開いてあげれば良いんじゃないですか? | ||||||||
|
投稿日時: 2006-07-27 17:31
開発環境 vs2005 vb
返答ありがとうございます。 環境設定は上のとおりです。 参照設定をして、フォームを開くとなると、 Imports ××マスタ Private Sub ××マスタ_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ××マスタ.Click Dim masuta as ××マスタ masuta.MdiParent = Me Call Shell("××マスタ.exe") て、ことでしょうか!? 現状は、親子関係になりませんでした。 やりかたが、ちがうんですかね!? | ||||||||
|
投稿日時: 2006-07-27 18:18
これでは、何のための参照設定なのかわからないですよね? 参照設定してあれば、別アセンブリからでも Form の型が取得できます。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-07-27 18:33
じゃんぬねっとさん、ありがとうございます。
とすると、 Imports ××マスタ Private Sub ××マスタ_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ××マスタ.Click Dim masuta as ××マスタ masuta.MdiParent = Me masuta.show でやるイメージですかね。 本題から離れてしまうのですが、現状、マスタとか各画面はすべて直接shellで、exeを起動しているのですが、 参照設定をし、showで開くほうが一般的なのでしょうか!? 初めてのことばかりで、教えていただけたら幸いです。 | ||||||||
|
投稿日時: 2006-07-27 18:39
"xxマスタ" が名前空間 + クラス名だとすると、ちょっと違和感はありますが、 (VB であれば、動作上は問題ありませんが) "イメージ" としては、それで良いと思います。
大雑把に言えば、仕様に因ると思います。 業務アプリケーションなどの場合は、'連動' させることもあるので後者の方が一般的かもしれません。 少なくとも、どらさんの場合は後者になるかと思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-07-27 19:07
じゃんぬねっとさん、返答ありがとうございます。
今、私の仕様では参照のほうがやりやすいかもしれないですね。 参照設定だと、メインメニューとかに、メインから開くフォームはすべて参照にしなくてはならなくなって、重くなってしまったり、参照がうまくいかなかったりするのではと、現状exe起動にしていたのですが、ちょっといろいろ試してみます。 ありがとうございました。 | ||||||||
|
投稿日時: 2006-07-27 19:11
プラグインの考え方が役に立つかも知れません。 http://codezine.jp/a/article.aspx?aid=1 [ メッセージ編集済み 編集者: かるあ 編集日時 2006-07-27 19:12 ] |