在这一章节中,我们将介绍有关窗体(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工具栏上的“开始”按钮运行时,它将显示以下窗口: