VB.Net表單(Form)

2019-10-16 23:01:31

在這一章節中,我們將介紹有關表單(Form)的相關知識。開啟Microsoft Visual Studio,按照以下步驟建立一個表單應用程式:檔案 -> 新建專案 -> Visual Basic -> Windows表單應用程式,然後填寫專案名稱為:Form1,以及儲存目錄位置。如下圖所示 -

最後,選擇「確定」,Microsoft Visual Studio將建立您的專案並顯示下面的視窗Form,其名稱為Form1。如下所示 -

Visual Basic表單是組成使用者介面的所有控制元件的容器。 在執行的Visual Basic應用程式中看到的每個視窗都是一個表單,因此術語表單和視窗描述了同一個實體。當建立Windows表單應用程式時,Visual Studio會為您建立一個預設表單。

每個表格都會有標題列,表格的標題會被顯示出來,並且會有按鈕來關閉,最大化和最小化如下所示的表單:

如果點選左上角的圖示,它會開啟控制選單,其中包含各種控制表單的命令,例如將控制元件從一個地方移動到另一個地方,以最大化或最小化表單或關閉表單。

表單屬性

下表列出了與表單有關的各種重要屬性。這些屬性可以在應用程式執行期間設定或讀取。可以參考Microsoft文件以獲取與Form控制元件關聯的屬性的完整列表:

編號 屬性 描述
1 AcceptButton 無論當時哪個控制元件有焦點,按下Enter鍵後自動啟用該按鈕。 通常表單上的確定按鈕被設定為表單的AcceptButton
2 CancelButton 按下Esc鍵時自動啟用的按鈕。通常,表單上的「取消」按鈕被設定為「取消按鈕」。
3 AutoScale 此布林屬性確定放置在表單上的控制元件是否自動縮放到當前字型的高度。此屬性的預設值為True。這是表單的屬性,但會影響表單上的控制元件。
4 AutoScroll 這個布林值屬性表明,如果捲動條的大小調整為不是所有的控制元件都可見,那麼捲動條是否會自動附加到表單上。
5 AutoScrollMinSize 這個屬性可以在連線捲動條之前指定表單的最小尺寸。
6 AutoScrollPosition AutoScrollPosition是兩個捲動條從其初始位置移開的畫素數。
7 BackColor 設定表單背景顏色。
8 BorderStyle BorderStyle屬性確定表單邊框的樣式和表單的外觀,可能的值有: NoneSizableFixed3DFixedDialogFixedSingle,FixedToolWindow以及SizableToolWindow
9 ControlBox 預設情況下,該屬性為True,可以將其設定為False來隱藏圖示並禁用「控制」選單。
10 Enabled 如果為True,則允許表單響應滑鼠和鍵盤事件; 如果是False,則禁用表單。
11 Font 此屬性指定字型型別,樣式,大小
12 HelpButton 確定是否應在表單的標題框中顯示一個幫助按鈕。
13 Height 這是以畫素為單位的表單的高度。
14 MinimizeBox 預設情況下,此屬性為True,可以將其設定為False以隱藏標題列上的最小化按鈕。
15 MaximizeBox 預設情況下,此屬性為True,可以將其設定為False以隱藏標題列上的最大化按鈕。
16 MinimumSize 這指定了可以最小化的視窗的最小高度和寬度。
17 MaximumSize 這指定了最大化視窗的最大高度和寬度。
18 Name 這是表單的實際名稱。
19 StartPosition 該屬性決定了表單在第一次顯示時的初始位置。它將具有以下值之一:CenterParent,CenterScreen,Manual,WindowsDefaultBounds,WindowsDefaultLocation
20 Text 該文字將出現在表單的標題列中。
21 Top, Left 這兩個屬性以畫素為單位設定或返回表單左上角的坐標。
22 TopMost 該屬性是一個True/False值,可讓指定表單是否將保留在應用程式中所有其他表單之上。它的預設屬性是False
23 Width 這是畫素中的形式的寬度。

Form類方法

以下是Form類的一些常用方法。您可以參考Microsoft文件以獲取與表單控制元件相關聯的方法的完整列表:

編號 方法 描述
1 Activate 啟用表單並給予焦點。
2 ActivateMdiChild 啟用表單的MDI 子項。
3 AddOwnedForm 將擁有的表單新增到此表單。
4 BringToFront 將控制元件帶到z順序的前面。
5 CenterToParent 將表單的位置置於父表單的邊界內。
6 CenterToScreen 將表單置於當前螢幕上。
7 Close 關閉表單。
8 Contains 檢索指示指定的控制元件是否為控制元件的子項的值。
9 Focus 將輸入焦點設定到控制元件。
10 Hide 隱藏控制元件。
11 Refresh 強制控制元件使其用戶端區域無效,並立即重繪本身和任何子控制元件。
12 Scale(SizeF) 按照指定的比例因子來縮放控制元件和所有子控制元件。
13 ScaleControl 縮放控制元件的位置,大小,填充和邊距。
14 ScaleCore 執行表單的縮放。
15 Select 啟用控制元件
16 SendToBack 將控制元件傳送到z順序的後面。
17 SetAutoScrollMargin 設定自動捲動頁邊距的大小。
18 SetDesktopBounds 在桌面坐標中設定表單的邊界。
19 SetDesktopLocation 在桌面坐標中設定表單的位置。
20 SetDisplayRectLocation 將顯示視窗定位到指定的值。
21 Show 將控制元件顯示給使用者。
22 ShowDialog 將表單顯示為模式對話方塊。

表單事件

下表列出了與表單有關的各種重要事件。您可以參考Microsoft文件以獲取與表單控制元件關聯的事件的完整列表:

編號 事件 描述
1 Activated 在程式碼或使用者啟用表單時發生。
2 Click 在單擊表單時發生。
3 Closed 在表單關閉之前發生。
4 Closing 在表單關閉時發生。
5 DoubleClick 在雙擊表單控制元件時發生。
6 DragDrop 在拖放操作完成時發生。
7 Enter 在進入表單時發生。
8 GotFocus 在表單控制元件獲得焦點時發生。
9 HelpButtonClicked 在單擊「幫助」按鈕時發生。
10 KeyDown 當表單具有焦點時按下鍵時發生。
11 KeyPress 當表單具有焦點時按下鍵時發生。
12 KeyUp 在表單具有焦點時釋放鍵時發生。
13 Load 在首次顯示表單之前發生。
14 LostFocus 當表單失去焦點時發生。
15 MouseDown 當滑鼠指標位於表單上並按下滑鼠按鈕時發生。
16 MouseEnter 在滑鼠指標進入表單時發生。
17 MouseHover 在滑鼠指標停留在表單上時發生。
18 MouseLeave 在滑鼠指標離開表單時發生。
19 MouseMove 當滑鼠指標移到表單上時發生。
20 MouseUp 當滑鼠指標位於表單上並釋放滑鼠按鈕時發生。
21 MouseWheel 當滑鼠滾輪移動而控制元件具有焦點時發生。
22 Move 在表單移動時發生。
23 Resize 在控制元件調整大小時發生。
24 Scroll 在使用者或程式碼捲動瀏覽客戶區時發生。
25 Shown 在表單首次顯示時發生。
26 VisibleChanged Visible屬性值更改時發生。

範例

以下是一個範例,它顯示了如何在表單載入事件時建立兩個按鈕,並同時設定不同的屬性。

由於Form1 是在自己的事件處理程式中被參照的,所以它將被寫為Me,而不是使用它的名字,但是如果在其他控制元件的事件處理程式中存取相同的表單,那麼它將使用其名稱Form1來存取。雙擊表單並將下面的程式碼放在開啟的視窗中。

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ' Create two buttons to use as the accept and cancel buttons. 
        Dim button1 As New Button()
        Dim button2 As New Button()
        ' Set the text of button1 to "OK".
        button1.Text = "OK"
        ' Set the position of the button on the form.
        button1.Location = New Point(10, 10)
        ' Set the text of button2 to "Cancel".
        button2.Text = "Cancel"
        ' Set the position of the button based on the location of button1.
        button2.Location =
           New Point(button1.Left, button1.Height + button1.Top + 10)
        ' Set the caption bar text of the form.   
        Me.Text = "tw511.com"
        ' Display a help button on the form.
        Me.HelpButton = True
        ' Define the border style of the form to a dialog box.
        Me.FormBorderStyle = FormBorderStyle.FixedDialog
        ' Set the MaximizeBox to false to remove the maximize box.
        Me.MaximizeBox = False
        ' Set the MinimizeBox to false to remove the minimize box.
        Me.MinimizeBox = False
        ' Set the accept button of the form to button1.
        Me.AcceptButton = button1
        ' Set the cancel button of the form to button2.
        Me.CancelButton = button2
        ' Set the start position of the form to the center of the screen.
        Me.StartPosition = FormStartPosition.CenterScreen
        ' Set window width and height
        Me.Height = 300
        Me.Width = 560
        ' Add button1 to the form.
        Me.Controls.Add(button1)
        ' Add button2 to the form.
        Me.Controls.Add(button2)
    End Sub
End Class

當上面的程式碼執行並使用Microsoft Visual Studio工具列上的「開始」按鈕執行時,它將顯示以下視窗: