§15 Webブラウザ2 | プログラミング実習 |
【2】 オブジェクトの配置
ウィンドウのサイズを変更すると、WebBrowser1オブジェクトだけはウィンドウサイズに合わせて大きさが変わる。しかし、ボタンなどは同じ位置のままである。ここでは、7つのボタンはウィンドウの右上に、アドレス入力欄は大きさが変わるようにする。
操作 9 各オブジェクトのLeftプロパティを設定するメソッドHaichiを次のように作成する。
Private Sub Haichi()
Dim kankaku As Integer = 4
VerButton.Left = Panel1.Width - VerButton.Width
- kankaku
SearchButton.Left = VerButton.Left - SearchButton.Width
- kankaku
HomeButton.Left = SearchButton.Left - HomeButton.Width
- kankaku
StopButton.Left = HomeButton.Left - StopButton.Width
- kankaku
UpdateButton.Left = StopButton.Left - UpdateButton.Width
- kankaku
BackButton.Left = UpdateButton.Left - BackButton.Width
- kankaku
GoButton.Left = BackButton.Left - GoButton.Width
- kankaku
txtAddress.Width = GoButton.Left - 5
'←幅変更
End Sub
最後の命令はtxtAddressオブジェクトの幅を変更している。
操作 10 プログラムを起動すると、Load イベントが発生する。フォームのLoadイベントに対応するFome1_Loadメソッドに、各オブジェクトのTopプロパティを設定するプログラムを次のように入力する。
Private Sub Form1_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles MyBase.Load
VerButton.Top = 2
SearchButton.Top = VerButton.Top
HomeButton.Top = VerButton.Top
StopButton.Top = VerButton.Top
UpdateButton.Top = VerButton.Top
BackButton.Top = VerButton.Top
GoButton.Top = VerButton.Top
txtAddress.Top = 9
Haichi() '←メソッドの呼び出し
End Sub
操作 11 ウィンドウのサイズを変更すると、Resizeイベントが発生する。フォームのResizeイベントに対応するFome1_Resizeメソッドにプログラムを次のように入力する。
Private Sub Form1_Resize(ByVal sender As Object, ByVal e
As System.EventArgs) Handles Me.Resize
Haichi() '←メソッドの呼び出し
End Sub
実行して、ウィンドウのサイズを変更すると、各オブジェクトの配置や大きさが変わる。ウィンドウを小さくしすぎるとタイトルバーだけになる。
○ ウインドウの最小サイズ
操作 12 ウィンドウのサイズが最初の500×400より小さくならないように、フォームのMinimumSizeプロパティを次のように設定する。
MinimumSize 500, 400
実行して、ウィンドウのサイズを変更しても、最初の500×400より小さくならない。
【3】 Webページの表示
アドレス欄にURLを入力後、[Enter]キーを押すか、GoボタンをクリックするWebページが表示されるようにする。
操作 13 GoボタンGoButtonのクリックイベントに対応するメソッドを次のように作成する。
Private Sub GoButton_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles GoButton.Click
WebBrowser1.Navigate(txtAddress.Text)
'Webページ表示
End Sub
Navigateメソッドに表示したいWebページのURLを指定すると表示される。
実行して、「http://masudahp.web.fc2.com/」と入力して、Goボタンをクリックすると私のおもちゃ箱のWebページが表示される。リンクポイントをクリックするとリンク先のWebページが表示される。
操作 14 テキストボックスtxtAddressのキーダウンイベントに対応するメソッドを次のように作成する。
Private Sub txtAddress_KeyDown(ByVal sender As Object, ByVal
e As System.Windows.Forms.KeyEventArgs) Handles txtAddress.KeyDown
If e.KeyCode = Keys.Enter Then
WebBrowser1.Navigate(txtAddress.Text)
'Webページ表示
End If
End Sub
テキストボックスの[Enter]キーの処理は、「5.計算(2)、【4】フォーカスの移動(2)」で説明している。このときは、KeyPressイベントであったが、今回はKeyDownイベントを使い、文字コードで比較している。違いを比べてみよ。
実行して、「http://masudahp.web.fc2.com/」と入力して、[Enter]キーを押すと私のおもちゃ箱のWebページが表示される。リンクポイントをクリックするとリンク先の Webページが表示される。
操作 15 プログラムを起動するとWebページが表示されるように、フォームのLoadイベントに対応するFome1_Loadメソッドに追加する。(下線部)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles MyBase.Load
VerButton.Top = 2
<< 略 >>
Haichi() '←メソッドの呼び出し
WebBrowser1.Navigate("http://masudahp.web.fc2.com")
End Sub
実行するとWebページが表示される。
§15 Webブラウザ2 | Copyright©2008 Hiroshi Masuda |