- PR -

VB.NETのフォームの制御について

1
投稿者投稿内容
たか
会議室デビュー日: 2003/08/13
投稿数: 15
投稿日時: 2003-10-28 12:20
 お世話になっております。
フォームの制御について質問をさせて下さい。
 
 @Form1のボタンをクリックすると、Form2を呼び出し、
 その時Form1のフォームサイズを最小化にします。
 
 AForm2がクローズ後、Form1を元のフォームサイズに戻す。
どのように行えばいいのでしょうか?
宜しくお願い致します。
rvmx
大ベテラン
会議室デビュー日: 2002/09/26
投稿数: 184
お住まい・勤務地: 愛媛県
投稿日時: 2003-10-28 17:08
今日は

下記の様にすれば出来ると思います。
Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button.Click
Dim f2 as Form2 = New Form2
Me.WindowState = FormWindowState.Minimized
f2.ShowDialog()
Me.WindowState = FormWindowState.Normal
End Sub


[ メッセージ編集済み 編集者: rvmx 編集日時 2003-10-28 17:10 ]
たか
会議室デビュー日: 2003/08/13
投稿数: 15
投稿日時: 2003-10-29 15:39
ありがとうございます。RVMXさんがおっしゃる通りにすると
できました。あと一つ質問なのですが、画面に表示された
フォーム(Form2)に、フォーカスを移す事はできるのでしょうか?
何度も質問してお手数ですが、宜しくお願いいたします。
rvmx
大ベテラン
会議室デビュー日: 2002/09/26
投稿数: 184
お住まい・勤務地: 愛媛県
投稿日時: 2003-10-29 16:27
今日は

f2.ShowDialog() の後Form2_Gotfocusのイベントは起きていると思いますが
もし、From2を一番手前に表示したいのなら、下記の様にTopMostを追加すれば出来ると思います。
Me.WindowState = FormWindowState.Minimized
f2.TopMost = True
f2.ShowDialog()
たか
会議室デビュー日: 2003/08/13
投稿数: 15
投稿日時: 2003-10-31 10:36
いつもお世話になっています。
RVMXさん、親切な回答、ありがとうございました。
RVMXさんのおっしゃる通り、
From2を一番手前に表示したい場合、
f2.TopMost=True
を追加して表示する事ができました。
ですが、やっぱり表示されてもフォーカスが移動できません。
マウスでそのフォーム(ここではForm2)をクリックすると,フォーカスが移動するのですが・・・
表示した段階で、フォーカスを移動する方法が他にあるのでしょうか?
下記がそのPGになっています。
    Dim f2 As New Form2
Me.WindowState = FormWindowState.Minimized
f2.TopMost = True
f2.ShowDialog()
Me.WindowState = FormWindowState.Normal
1

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