C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 3つあるフォームの2つ目をアクティブにする方法


(過去ログ 113 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■66736 / inTopicNo.1)  3つあるフォームの2つ目をアクティブにする方法
  
□投稿者/ まさ (6回)-(2013/05/21(Tue) 00:00:27)

分類:[VB.NET/VB2005 以降] 

お世話になります。
Visual Studio 2010のフォームを使って開発をしています。

3つのフォームがあり、その中の2つ目をアクティブにしたいのですが、
1つめがアクティブになってしまい、うまくいきません。
何か良い方法はないでしょうか?

概要として下記のような感じです。

Form_A(メニュー画面)
Form_B(入力画面)         
Form_C(入力用のデータ選択画面)

フォームの起動順位はForm_AからForm_Bを開き、Form_BからForm_Cを開きます。
そのときフォームCを開いたとき、Form_A・Form_BはForm_Cに隠れている状態です。(最小化などはしていません。)

Form_Cからデータを選択した場合にそのデータをForm_Bのテキストボックスへ表示させたいのですが、
Form_Aが選択されてしまいうまくいきません。

Form_Aを立ち上げないで、Form_BとForm_Cのみで動かした場合はうまくいきます。
Form_B.textbox.focus()でForm_Bをアクティブにしています。


Form_B.Activeteを試してみたのですが、ダメでした。

よろしくお願いします。

引用返信 編集キー/
■66738 / inTopicNo.2)  Re[1]: 3つあるフォームの2つ目をアクティブにする方法
□投稿者/ shu (320回)-(2013/05/21(Tue) 07:49:15)
No66736 (まさ さん) に返信

各フォームをどのように開いているのかが分かりません。
Showで開いているとしたらOwnerを指定しない方がよいです。
AからBをShowしてBからCをShowDialogしているとしたらBをアクティブにすることは出来ません。
Bを開いた状態で別のフォームをAから開くことがなければBを開いた時点でAをHideされた方が
分かりやすいと思います。
引用返信 編集キー/
■66755 / inTopicNo.3)  Re[2]: 3つあるフォームの2つ目をアクティブにする方法
□投稿者/ まさ (7回)-(2013/05/22(Wed) 14:12:17)
2013/05/22(Wed) 23:45:20 編集(投稿者)
2013/05/22(Wed) 23:44:46 編集(投稿者)

<pre><pre>■No66738 (shu さん) に返信。

shu様、いつもありがとうございます。

何とか自己解決できました。
下記をForm_Cに作成したらうまくいきました。

Private _Form_B As Form_B

Public Property proForm_B() As Form_B
Get
Return _Form_B
End Get
Set(ByVal value As Form_B)
_Form_B = value
End Set
End Property

ありがとうございました。またよろしくお願いします。
</pre></pre>
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -