在這一章節中,我們將介紹有關窗體(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 屬性確定窗體邊框的樣式和窗體的外觀,可能的值有: None ,Sizable ,Fixed3D ,FixedDialog ,FixedSingle ,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 = "xuhuhu.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工具欄上的“開始”按鈕運行時,它將顯示以下窗口: