版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、VB.NETVB.NET清华大学出版社清华大学出版社第6章 Windows窗体与控件GYC本章主要内容剪贴板演示程序剪贴板演示程序 我的电子相册程序我的电子相册程序 石头、剪刀、布游戏程序石头、剪刀、布游戏程序 课程选择程序课程选择程序 日历时钟程序日历时钟程序本章任务本章任务 GYC本章要点 u窗体的属性、方法和事件窗体的属性、方法和事件 u文本类控件的应用文本类控件的应用 u按钮类控件的应用按钮类控件的应用 u列表类控件的应用列表类控件的应用 u图片框控件的应用图片框控件的应用 u进度条、滚动条、定时器、轨迹条等控件的应用进度条、滚动条、定时器、轨迹条等控件的应用 GYC6.1 窗体与控件
2、概述 WindowsWindows窗体和控件是利用窗体和控件是利用VB .NETVB .NET开发开发WindowsWindows应用程序的基础,在应用程序的基础,在VB .NETVB .NET的应用的应用程序中,窗体和控件都是对象,都是类的实程序中,窗体和控件都是对象,都是类的实例。例。WindowsWindows窗体是可视化程序设计的基础界窗体是可视化程序设计的基础界面,用来作为其它控件对象的载体或容器。面,用来作为其它控件对象的载体或容器。控件是添加到窗体上的对象,是界面上的要控件是添加到窗体上的对象,是界面上的要素,每种类型的控件都有一套属性、方法和素,每种类型的控件都有一套属性、方法
3、和事件,都实现某种特定的功能。事件,都实现某种特定的功能。 GYC6.1 窗体与控件概述 在前面章节的各任务中,已经学习了窗体在前面章节的各任务中,已经学习了窗体的一些知识,知道窗体就是的一些知识,知道窗体就是WindowsWindows的窗口。的窗口。也用到了一些常用的控件,如也用到了一些常用的控件,如LabelLabel控件、控件、TextBoxTextBox控件、控件、ButtonButton控件等,知道这些控件控件等,知道这些控件可以作为界面上的要素,都能实现一定的功可以作为界面上的要素,都能实现一定的功能。在能。在VB.NETVB.NET中,中,WindowsWindows窗体和控件
4、有很多,窗体和控件有很多,本章将通过本章将通过5 5个任务详细介绍常用个任务详细介绍常用WindowsWindows窗窗体和控件的属性、方法、事件及使用方法。体和控件的属性、方法、事件及使用方法。GYC6.2 任务任务6-1:我的电子相册程序:我的电子相册程序窗体与图片框窗体与图片框 任务任务6-16-1描述:描述: 编写一个我的电子相册程序,程序的设计界编写一个我的电子相册程序,程序的设计界面如图面如图6-16-1所示。程序运行时将会出现如图所示。程序运行时将会出现如图6-26-2所示的所示的“欢迎欢迎”对话框,对话框,图6-2 程序运行时出现的“欢迎”对话框 图6-1 程序设计界面 GYC
5、6.2 任务任务6-1:我的电子相册程序:我的电子相册程序窗体与图片窗体与图片框框 用户输入姓名后单击用户输入姓名后单击“确定确定”按钮将会进入电子相册按钮将会进入电子相册(不需要姓名,将无法进入),如图(不需要姓名,将无法进入),如图6-36-3所示。当用户改所示。当用户改变窗体大小时,照片自动改变大小以填满窗体。变窗体大小时,照片自动改变大小以填满窗体。用户可以通过微调用户可以通过微调控件输入照片序号控件输入照片序号,也可以通过滚动,也可以通过滚动条输入照片序号来条输入照片序号来显示相应的照片,显示相应的照片,并且微调按钮和滚并且微调按钮和滚动条的输入可以相动条的输入可以相互更新。互更新。
6、图6-3 程序运行界面 GYC6.2 任务任务6-1:我的电子相册程序:我的电子相册程序窗体与图片框窗体与图片框 显示的照片文件存放在应用程序目录下,文显示的照片文件存放在应用程序目录下,文件名任意,照片的张数任意。只需单击件名任意,照片的张数任意。只需单击“单击单击”按钮,将会出现按钮,将会出现6-46-4所示的所示的“再见再见”对话框,单对话框,单击击“确定确定”按钮将退出应用程序。按钮将退出应用程序。图6-4 “再见”对话框GYC6.2 任务任务6-1:我的电子相册程序:我的电子相册程序窗体与图片框窗体与图片框 窗体有一个事件窗体有一个事件LoadLoad,该事件在窗体加载时发生,故为了
7、使程序,该事件在窗体加载时发生,故为了使程序刚开始执行时就显示出欢迎对话框,可在该事件过程中调用刚开始执行时就显示出欢迎对话框,可在该事件过程中调用InputBoxInputBox函数来实现。窗体有一个名为函数来实现。窗体有一个名为ClosingClosing的事件,该事件在窗体关闭时的事件,该事件在窗体关闭时发生,因此可在该事件中调用发生,因此可在该事件中调用MsgBoxMsgBox函数显示出函数显示出“再见再见”对话框。显对话框。显示照片可使用示照片可使用PictureBoxPictureBox控件(图片框控件),为使照片填满图片框控件(图片框控件),为使照片填满图片框控件,必须设置图片框
8、控件的控件,必须设置图片框控件的SizeModeSizeMode属性值为属性值为StretchImageStretchImage,并且,并且在窗体刚加载时或改变大小时,把图片框的大小设置与窗体的大小一在窗体刚加载时或改变大小时,把图片框的大小设置与窗体的大小一致。当窗体的大小发生改变时,将会发生窗体的致。当窗体的大小发生改变时,将会发生窗体的ResizeResize事件,因此可事件,因此可以在该事件中重新设置图片框的大小。为了显示当前文件夹下的多张以在该事件中重新设置图片框的大小。为了显示当前文件夹下的多张照片,可设置一个字符串数组用来存放所有照片的文件名,并通过照片,可设置一个字符串数组用来
9、存放所有照片的文件名,并通过DirectoryDirectory类的类的GetFilesGetFiles方法获得所有照片的文件名。通过序号显示方法获得所有照片的文件名。通过序号显示照片时,只需把序号值减照片时,只需把序号值减1 1作为存放照片文件名的数组元素的下标,作为存放照片文件名的数组元素的下标,对应的元素值就是要显示的照片文件名,通过程序把该照片文件在图对应的元素值就是要显示的照片文件名,通过程序把该照片文件在图片框中显示出来即可。片框中显示出来即可。 为实现为实现HScrollBarHScrollBar控件(水平滚动条控件)与控件(水平滚动条控件)与NumericUpDownNumer
10、icUpDown控控件(微调控件)的相互更改,可在件(微调控件)的相互更改,可在NumericUpDownNumericUpDown控件的控件的ValueChangedValueChanged事件中把它的事件中把它的ValueValue属性值赋值给属性值赋值给HScrollBarHScrollBar控件的控件的ValueValue属性,在属性,在HScrollBarHScrollBar控件的控件的ScrollScroll事件中把它的事件中把它的ValueValue属性值赋属性值赋值给值给NumericUpDownNumericUpDown控件的控件的ValueValue属性。属性。GYC6.2
11、 任务任务6-1:我的电子相册程序:我的电子相册程序窗体与图片框窗体与图片框任务实现:任务实现:1.启动VB.NET,新建一个项目,项目类型为“Windows应用程序”,项目的存放位置为“D:VBTASKCH06”,项目名为“Task6_1” 2.把Form1窗体的Text属性值设置为“我的相册”,把它的Name属性值设置为“frmPhoto”。单击“解决方案资源管理器”中的“Form1.VB”窗体 3.然后在属性窗口中把它文件名属性设置为“frmPhoto.vb”。然后执行【项目】【Task6_1属性】命令,在出现的“Task6_1属性页”对话框中把“启动对象”设置为“frmPhoto” 4
12、.对照程序设计界面,为窗体添加控件并设置控件的属性。控件的属性设置如表6-1所示 GYC6.2 任务6-1:我的电子相册程序窗体与图片框表6-1 任务6-1控件属性设置及其功能控件名控件名属性名属性名属性值属性值说明说明PictureBox1PictureBox1(PictuPicture Boxre Box控件)控件)BorderStBorderStyleyleDockDockFixed3DFixed3DBottomBottom显示相片显示相片Panel1Panel1(PanelPanel控件)控件) BorderStBorderStyleyleFixed3DFixed3D作为除图片框之外的
13、其它控作为除图片框之外的其它控件的容器件的容器Label1Label1TextText 请输入照片序请输入照片序号:号: 提示提示NumericUpDown1NumericUpDown1(NuNumericUpDownmericUpDown控控件)件)MinimumMinimum1 1输入要显示的相片的序号输入要显示的相片的序号HScrollBar1HScrollBar1(HScroHScrollBarllBar控件)控件)MinimunMinimun1 1输入要显示的相片的序号输入要显示的相片的序号Button1Button1TextText 退出退出 单击将退出程序单击将退出程序GYC6.
14、2 任务6-1:我的电子相册程序窗体与图片框PictureBox控件又称图片框控件,在工具箱中的图标为控件又称图片框控件,在工具箱中的图标为“”“”,常用于显示照片,常用于显示照片 1Panel控件又称面板控件,在工具箱中的图标为控件又称面板控件,在工具箱中的图标为“”“”,常用于,常用于作为其它控件的容器作为其它控件的容器 2NumericUpDown控件又控件又称数称数字微字微调调按按钮输钮输入控件,在工具箱入控件,在工具箱中的中的图标为图标为“”“”,常用于,常用于输输入入数值数值型型数数据据 3HScrollBar控件又称水平滚动条控件,在工具箱中的图标为控件又称水平滚动条控件,在工具
15、箱中的图标为“”“”,常用于输入数值型数据,常用于输入数值型数据 4说明:说明: GYC任务 4: 在代在代码码“ “public class frmphoto”的上面的上面输输入如下入如下语语句。句。Imports System.io 说明说明:这条语句的作用是引入命名空间这条语句的作用是引入命名空间“System.io”,在该命名,在该命名空间中有许多与文件有关的类,本任务中要取得在当前文空间中有许多与文件有关的类,本任务中要取得在当前文件夹中存放的照片文件名,需用到件夹中存放的照片文件名,需用到“Directory”类,因此类,因此需把该命名空间引入到程序中来。需把该命名空间引入到程序中
16、来。GYC任务 5:定义模块级变量或数组,如下。定义模块级变量或数组,如下。 u Dim ClientName As String 存放用户姓名存放用户姓名u Dim PhotoName() As String 存放在当前文件夹中取出的存放在当前文件夹中取出的照片文件名照片文件名u Dim PicCount As Integer 存放当前文件夹中的照片存放当前文件夹中的照片数量数量GYC任务 6: 编写窗体的编写窗体的Load事件过程代码,如下事件过程代码,如下 Private Sub frmPhoto_Load(ByVal sender As System.Object, ByVal e A
17、s System.EventArgs) Handles MyBase.Load Dim PFName As String 循环直到用户输入姓名 Do ClientName = InputBox(嗨,朋友!欢迎您来到我的电子相册!, 欢迎!, ) Loop While Len(Trim(ClientName) = 0 把用户的姓名作为欢迎词的一部分显示在标题栏上 Me.Text = 欢迎 & ClientName & 来到我的相册! PictureBox1.Left = 0 图片框靠左上角显示 PictureBox1.Top = 0 图片框在视觉上充满整个窗体(除了Panel1占
18、据的空间外) PictureBox1.Height = Me.ClientSize.Height - Panel1.Height GYCPPictureBox1.Width = Me.ClientSize.WidthhotoName = Directory.GetFiles(Application.StartupPath, *.jpg) PicCount = PhotoName.Length 获得照片数量 NumericUpDown1.Maximum = PicCount NumericUpDown1的Maximun属性值设为照片数 HScrollBar1.Maximum = PicCount
19、 把HScrollBar1的Maximun属性值设为照片数 上述两条语句执行后,就可以通过NumericUpDown1和HScrollBar1控件输入任意照片的照片号 PictureBox1.Image = Image.FromFile(PhotoName(0) 显示第一幅照片End subEnd Sub GYC任务说明:(1)程序中首先通过一个循环让用户输入姓名,然后通过设置图片框的相应属性使图片框填满窗体,接着获取当前文件夹中存放的所有照片文件名并存放到数组PhotoName中,通过该数组的长度就可以存得照片的数量,再通过照片的数量设置水平滚动条控件和微调按钮输入文本框能够输入的最大值,最
20、后把第一幅照片显示出来。(2)程序中“PhotoName = Directory.GetFiles(Application.StartupPath, *.jpg)”语句中的GetFiles,是Directory类的一个方法,用来获取指定文件夹中的文件名,并返回一个由文件名填充的字符串数组。语句中的“Application.StartupPath”代表的是应用程序启动文件夹(路径),“*.jpg”表示只选取扩展名为jpg的文件 (3)语句“PictureBox1.Image = Image.FromFile(PhotoName(0)”用来把数组元素PhotoName(0)存放的照片文件名对应的照
21、片显示在PictureBox1图片框控件中。PictureBox控件常用于图形设计和图像处理应用程序,在该控件中可以加载的图像文件格式有:位图文件(.Bmp)、图标文件(.ICO)、图元文件(.wmf)、.JPEG和.GIF文件。GYC该控件主要有以下常用属性: Image属性:该属性用来设置控件要显示的图像。为把文件中的图像加载 到图片框中,通常可采用以下三种方式。 设计时单击Image属性,在其后将出现【】按钮,单击该按钮将出现一个【打开】对话框,在该对话框中找到相应的图形文件后按【确定】按钮 产生一个Bitmap类的实例并赋值给Image属性。形式如下: Dim BP As Bitmap
22、定义一个Bitmap类的对象 BP = New Bitmap(P1.JPG)根据文件生成Bitmap类的实例 PictureBox1.Image = BP把Bitmap对象赋值给图片框的Image属性 通过Image.FromFile方法直接从文件中加载。形式如下: PictureBox对象名.Image=Image.FromFile(图像文件名); SizeMode属性:该属性用来决定图像的显示模式。其取值有四种情况,取值 及含义如表6-2所示。各种模式下的图片显示样式如图6-5所示。GYC表表6-2 SizeMode属性的取值及其含义属性的取值及其含义属属 性性 值值含含 义义Pictur
23、eBoxSizeMode.AutoSize调整调整 PictureBox 大小,使其等于所包含的图像大小。大小,使其等于所包含的图像大小。PictureBoxSizeMode.CenterImage如果如果PictureBox比图像大,则图像将居中显示。如果图像比比图像大,则图像将居中显示。如果图像比PictureBox大,则图片将居于大,则图片将居于PictureBox中心,而外边缘将被剪裁掉。中心,而外边缘将被剪裁掉。PictureBoxSizeMode.Normal图像被置于图像被置于PictureBox的左上角。如果图像比包含它的的左上角。如果图像比包含它的PictureBox大,则该
24、图像将被剪裁掉。大,则该图像将被剪裁掉。PictureBoxSizeMode.StretchImagePictureBox中的图像被拉伸或收缩,以适合中的图像被拉伸或收缩,以适合PictureBox的大小。的大小。图6-5 图片框显示模式示例GYC任务 7:编写窗体的Closing事件过程代码,如下。 Private Sub frmPhoto_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing MsgBox(欢迎您再次来到我的相册,再见!
25、, , 再见) End Sub编写窗体的Resizing事件过程代码,如下。 Private Sub frmPhoto_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize PictureBox1.Left = 0 图片框靠左上角显示 PictureBox1.Top = 0 图片框在视觉上充满整个窗体(除了Panel1占据的空间外) PictureBox1.Height = Me.ClientSize.Height - Panel1.Height PictureBox1.Width =
26、 Me.ClientSize.Width End Sub任务 8:GYC说明:(1)在事件代码中通过给图片框PictureBox1的Top和Left属性赋值0,使图片框靠左上角显示。通过给图片框PictureBox1的Height和Width属性赋值,使之填满整个窗体。这样程序运行时,用户改变窗体的大小,照片的大小也相应地变化。(2)ClientSize是窗体的一个属性,其作用是用户区的大小。窗体的属性有很多,下面着重介绍窗体的常用属性。 l Name属性:用来获取或设置窗体的名称,在应用程序中可通过该属性来引用窗体。l WindowState属性:用来获取或设置窗体的窗口状态。取值有三种:F
27、ormWindowState.Normal(窗体正常显示)、FormWindowState.Minimized(窗体以最小化形式显示)和FormWindowState.Maximized(窗体以最大化形式显示)。l StartPosition属性:用来获取或设置运行时窗体的起始位置。其取值及含义如表6-3所示。默认的起始位置是 FormStartPosition.WindowsDefaultLocation。 GYC表6-3 窗体的起始位置取值及其含义取值含义FormStartPosition.CenterParent窗体在其父窗体中居中。FormStartPosition.CenterScr
28、een窗体在屏幕上居中,其尺寸在窗体大小中指定。FormStartPosition.Manual窗体的位置和大小将决定其起始位置。FormStartPosition.WindowsDefaultBounds窗体定位在 Windows 默认位置,其边界也由 Windows 默认决定。FormStartPosition.WindowsDefaultLocation窗体定位在 Windows 默认位置,其尺寸在窗体大小中指定。GYCText Width Height Left 该属性是一该属性是一个字符串属个字符串属性,用来设性,用来设置或返回在置或返回在窗口标题栏窗口标题栏中显示的文中显示的文字。
29、字。 用来获取用来获取或设置窗或设置窗体的宽度。体的宽度。 用来获取用来获取或设置窗或设置窗体的高度。体的高度。 用来获取或用来获取或设置窗体的设置窗体的左边缘的左边缘的 x 坐标(以像坐标(以像素为单位)。素为单位)。 函数的属性:GYCTop ControlBox MaximizeBox MinimizeBox 用来获取或设用来获取或设置窗体的上边置窗体的上边缘的缘的 y 坐标坐标(以像素为单(以像素为单位)。位)。 用来获取或设置用来获取或设置一个值,该值指一个值,该值指示在该窗体的标示在该窗体的标题栏中是否显示题栏中是否显示控制框。值为控制框。值为True时将显示控时将显示控制框,值为
30、制框,值为False时不显示控制框。时不显示控制框。 用来获取或设置用来获取或设置一个值,该值指一个值,该值指示是否在窗体的示是否在窗体的标题栏中显示最标题栏中显示最大化按钮。值为大化按钮。值为True时显示最大时显示最大化按钮,值为化按钮,值为False时不显示时不显示最大化按钮。最大化按钮。 用来获取或设置用来获取或设置一个值,该值指一个值,该值指示是否在窗体的示是否在窗体的标题栏中显示最标题栏中显示最小化按钮。值为小化按钮。值为True时显示最小时显示最小化按钮,值为化按钮,值为False时不显示最时不显示最小化按钮。小化按钮。 函数的属性:GYCu AcceptButton属性:该属性
31、用来获取或设置一个值,该值是一个按钮的名称,当属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当用户按用户按 ENTER 键时就相当于单击了窗体上的该按钮。键时就相当于单击了窗体上的该按钮。u CancelButton属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当用户按用户按ESC键时就相当于单击了窗体上的该按钮。键时就相当于单击了窗体上的该按钮。u Modal属性:该属性用来设置窗体是否为有模式显示窗体。如果有模式地显示该属性:该属性用来设置窗体是否为有模式显示窗体。如果有模式地显示该窗体,该属性值为窗体,该属性值
32、为 True; 否则为否则为 False。当有模式地显示窗体时,用户只能和模。当有模式地显示窗体时,用户只能和模式窗体进行交互。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后式窗体进行交互。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后才能与另一窗体进行交互。有模式显示的窗体通常用作应用程序中的对话框。才能与另一窗体进行交互。有模式显示的窗体通常用作应用程序中的对话框。u ActiveControl属性:用来获取或设置容器控件中的活动控件。窗体也是一种容器属性:用来获取或设置容器控件中的活动控件。窗体也是一种容器控件。控件。u ActiveMdiChild属性:用来获取多文档界
33、面属性:用来获取多文档界面(MDI)的当前活动子窗口。的当前活动子窗口。u AutoScroll属性:用来获取或设置一个值,该值指示窗体是否实现自动滚动。如属性:用来获取或设置一个值,该值指示窗体是否实现自动滚动。如果此属性值设置为果此属性值设置为 True,则当任何控件位于窗体工作区之外时,会在该窗体上,则当任何控件位于窗体工作区之外时,会在该窗体上显示滚动条。另外,当自动滚动打开时,窗体的工作区自动滚动,以使具有输入显示滚动条。另外,当自动滚动打开时,窗体的工作区自动滚动,以使具有输入焦点的控件可见。焦点的控件可见。AcceptButton属性:该属性用来获取或设置一个值,该值是一属性:该
34、属性用来获取或设置一个值,该值是一个按钮的名称,当用户按个按钮的名称,当用户按 ENTER 键时就相当于单击了窗体上的该按钮。键时就相当于单击了窗体上的该按钮。u CancelButton属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当用户按用户按ESC键时就相当于单击了窗体上的该按钮。键时就相当于单击了窗体上的该按钮。u Modal属性:该属性用来设置窗体是否为有模式显示窗体。如果有模式地显示该属性:该属性用来设置窗体是否为有模式显示窗体。如果有模式地显示该窗体,该属性值为窗体,该属性值为 True; 否则为否则为 Fals
35、e。当有模式地显示窗体时,用户只能和模。当有模式地显示窗体时,用户只能和模式窗体进行交互。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后式窗体进行交互。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后才能与另一窗体进行交互。有模式显示的窗体通常用作应用程序中的对话框。才能与另一窗体进行交互。有模式显示的窗体通常用作应用程序中的对话框。函数的属性:GYCu ActiveControl属性:用来获取或设置容器控件中的活动控件。窗体也是一种容器控属性:用来获取或设置容器控件中的活动控件。窗体也是一种容器控件。件。u ActiveMdiChild属性:用来获取多文档界面属性:用来获取多文
36、档界面(MDI)的当前活动子窗口。的当前活动子窗口。u AutoScroll属性:用来获取或设置一个值,该值指示窗体是否实现自动滚动。如果此属性:用来获取或设置一个值,该值指示窗体是否实现自动滚动。如果此属性值设置为属性值设置为 True,则当任何控件位于窗体工作区之外时,会在该窗体上显示滚动,则当任何控件位于窗体工作区之外时,会在该窗体上显示滚动条。另外,当自动滚动打开时,窗体的工作区自动滚动,以使具有输入焦点的控件条。另外,当自动滚动打开时,窗体的工作区自动滚动,以使具有输入焦点的控件可见。可见。u BackColor属性:用来获取或设置窗体的背景色。属性:用来获取或设置窗体的背景色。u
37、BackgroundImage属性:用来获取或设置窗体的背景图像。属性:用来获取或设置窗体的背景图像。u Enabled属性:用来获取或设置一个值,该值指示控件是否可以对用户交互作出响应。属性:用来获取或设置一个值,该值指示控件是否可以对用户交互作出响应。如果控件可以对用户交互作出响应,则为如果控件可以对用户交互作出响应,则为 True;否则为;否则为 False。默认值为。默认值为 True。u Font属性:用来获取或设置窗体或控件显示的文本的字体。属性:用来获取或设置窗体或控件显示的文本的字体。u ForeColor属性:用来获取或设置窗体或控件的前景色。属性:用来获取或设置窗体或控件的
38、前景色。u IsMdiChild属性:获取一个值,该值指示该窗体是否为多文档界面属性:获取一个值,该值指示该窗体是否为多文档界面 (MDI) 子窗体。子窗体。值为值为True时,是子窗体,值为时,是子窗体,值为False时,不是子窗体。时,不是子窗体。IsMdiContainer属性:获取或属性:获取或设置一个值,该值指示窗体是否为多文档界面设置一个值,该值指示窗体是否为多文档界面 (MDI) 中的子窗体的容器。值为中的子窗体的容器。值为True时,是子窗体的容器,值为时,是子窗体的容器,值为False时,不是子窗体的容器。时,不是子窗体的容器。函数的属性:GYCu KeyPreview属性:
39、该属性用来获取或设置一个值,该值指示在将按键事属性:该属性用来获取或设置一个值,该值指示在将按键事件传递到具有焦点的控件前,窗体是否将接收该事件。值为件传递到具有焦点的控件前,窗体是否将接收该事件。值为True时,窗时,窗体将接收按键事件,值为体将接收按键事件,值为False时,窗体不接收按键事件。时,窗体不接收按键事件。u MdiChildren属性:数组属性。数组中的每个元素表示以此窗体作为父属性:数组属性。数组中的每个元素表示以此窗体作为父窗体的多文档界面窗体的多文档界面 (MDI) 子窗体。子窗体。u MdiParent属性:该属性用来获取或设置此窗体的当前多文档界面属性:该属性用来获
40、取或设置此窗体的当前多文档界面 (MDI) 父窗体。父窗体。u ShowInTaskbar属性:该属性用来获取或设置一个值,该值指示是否在属性:该属性用来获取或设置一个值,该值指示是否在 Windows 任务栏中显示窗体。任务栏中显示窗体。u Visible属性:该属性获取或设置一个值,该值指示是否显示该窗体或控属性:该属性获取或设置一个值,该值指示是否显示该窗体或控件。值为件。值为True时显示窗体或控件,值为时显示窗体或控件,值为False时不显示。时不显示。u Capture属性:如果该属性值为属性:如果该属性值为True,则鼠标就会被限定只由此控件响,则鼠标就会被限定只由此控件响应,不
41、管鼠标是否在此控件的范围内。应,不管鼠标是否在此控件的范围内。函数的属性:GYC(3 3)LoadLoad、ClosingClosing和和ResizingResizing均是窗体的事件名,窗均是窗体的事件名,窗体能够响应的事件有很多,下面介绍窗体常用的事件体能够响应的事件有很多,下面介绍窗体常用的事件及其发生场合。及其发生场合。 LoadLoad事件:该事件在窗体加载到内存时发生,即在第一次显事件:该事件在窗体加载到内存时发生,即在第一次显 示窗体前发生。示窗体前发生。ActivatedActivated事件:该事件在窗体激活时发生。事件:该事件在窗体激活时发生。DeactivateDeac
42、tivate事件:该事件在窗体失去焦点成为不活动窗体时事件:该事件在窗体失去焦点成为不活动窗体时 发生。发生。ResizeResize事件:该事件在改变窗体大小时发生。事件:该事件在改变窗体大小时发生。PaintPaint事件:该事件在重绘窗体时发生。事件:该事件在重绘窗体时发生。ClickClick事件:该事件在用户单击窗体时发生。事件:该事件在用户单击窗体时发生。DoubleClickDoubleClick事件:该事件在用户双击窗体时发生。事件:该事件在用户双击窗体时发生。ClosedClosed事件:该事件在关闭窗体时发生。事件:该事件在关闭窗体时发生。GYC(4 4)语句中的)语句中的
43、“Panel1.Height”Panel1.Height”使用了使用了Panel1Panel1控件的控件的HeightHeight方法。方法。PanelPanel控件通常作为面板存在,用来容纳其控件通常作为面板存在,用来容纳其它控件。它除了具有它控件。它除了具有HeightHeight、TopTop、LeftLeft、WidthWidth等常用等常用属性以外,还有一个重要属性属性以外,还有一个重要属性DockDock,用来指出,用来指出PanelPanel控件控件停泊在哪个边上,该属性的设置如图停泊在哪个边上,该属性的设置如图6-66-6所示,可通过单所示,可通过单击相应的方块来设置停泊属性。
44、击相应的方块来设置停泊属性。图6-6 Dock属性的设置GYC任务 9:编写“退出”按钮的Click事件过程代码 :说明:程序中语句程序中语句“Me.Close()”Me.Close()”中的中的MeMe代表的代表的是当前窗体,是当前窗体,CloseClose是窗体的一个方法,其作是窗体的一个方法,其作用是关闭窗体。窗体的方法也有很多,下面用是关闭窗体。窗体的方法也有很多,下面介绍一些窗体的最常用方法。介绍一些窗体的最常用方法。GYCActivateGYC任务 10: 运行界面,将会出现如图运行界面,将会出现如图6-26-2所示的对话框,用户输入姓所示的对话框,用户输入姓名后单击名后单击“确定
45、确定”按钮,将会出现如图按钮,将会出现如图6-36-3所示程序运行界面所示程序运行界面,改变窗体的大小,照片将会相应地改变大小。单击,改变窗体的大小,照片将会相应地改变大小。单击“退出退出”按钮,将会出现如图按钮,将会出现如图6-46-4的对话框,单击的对话框,单击“确定确定”按钮,程按钮,程序退出。序退出。 图6-2 程序运行时出现的“欢迎”对话框 图6-3 程序运行界面 图6-4 “再见”对话框GYC任务 11:说明:GYC(2)NumericUpDown控件看起来像是一个文本框与一对上下箭头按控件看起来像是一个文本框与一对上下箭头按钮的组合。用户可以通过单击向上和向下按钮、按向上和向下箭
46、头键来钮的组合。用户可以通过单击向上和向下按钮、按向上和向下箭头键来增大和减小数字,用户也可以直接输入数字。单击向上箭头键时,值向增大和减小数字,用户也可以直接输入数字。单击向上箭头键时,值向最大值方向增加;单击向下箭头键时,值向最小值方向减少。最大值方向增加;单击向下箭头键时,值向最小值方向减少。NumericUpDown控件的常用属性如下:控件的常用属性如下: DecimalPlaces:获取或设置该控件中显示的小数位数。:获取或设置该控件中显示的小数位数。 Hexadecimal:获取或设置一个值,该值指示该控件是否以十六进制:获取或设置一个值,该值指示该控件是否以十六进制格式显示所包含
47、的值。值为格式显示所包含的值。值为True时,以十六进制的形式显示值,值为时,以十六进制的形式显示值,值为False时,以十进制的形式显示值。时,以十进制的形式显示值。 Increment:获取或设置单击向上或向下按钮时,该控件递增或递减:获取或设置单击向上或向下按钮时,该控件递增或递减的值。的值。 Maximum:获取或设置该控件的最大值。:获取或设置该控件的最大值。 Minimum:获取或设置该控件的最小值。:获取或设置该控件的最小值。 Value:获取或设置该控件的当前值。:获取或设置该控件的当前值。 NumericUpDown控件的常用事件响应的主要事件有:控件的常用事件响应的主要事件
48、有:ValueChanged(在(在Value属性值发生改变时发生)、属性值发生改变时发生)、GotFocus(在获得焦点时发生)、(在获得焦点时发生)、LostFocus(在失去焦点时发生)等。(在失去焦点时发生)等。 GYC任务 12:GYC任务 13:编写HScrollBar1_Scroll的ValueChanged事件代码GYC任务 14:任务 15:GYC思考与实训:思考与实训:u 1如何使图片框中的图片充满整个窗体并能够随着窗体大小的如何使图片框中的图片充满整个窗体并能够随着窗体大小的改变而改变?改变而改变?u 2ScrollBar控件和控件和NumericUpDown控件各有什么
49、作用?控件各有什么作用?它们都有一个它们都有一个Value属性值,当该属性值发生改变时,将会发属性值,当该属性值发生改变时,将会发生什么事件?生什么事件?u 3请分别说明滚动条控件的请分别说明滚动条控件的Minimum属性、属性、Maximum属属性、性、Value属性、属性、SmallChange属性和属性和LargeChange属性属性的作用。的作用。u 4编写一个程序,用编写一个程序,用VScrollBar控件调整窗体的高,用控件调整窗体的高,用NumericUpDown控件调整窗体的宽度,程序设计界面如图控件调整窗体的宽度,程序设计界面如图6-7所示。所示。u 图图6-7 程序设计界面
50、程序设计界面图图6-8 程序运行界面程序运行界面u 5编写一个照片浏览程序,程序执行时单击一下照片,将会显编写一个照片浏览程序,程序执行时单击一下照片,将会显示下一张照片,当所有的照片显示完后将从头开始循环显示,示下一张照片,当所有的照片显示完后将从头开始循环显示,如图如图6-8所示。所示。GYC6.3 任务6-2:剪贴板演示程序文本框与命令按钮任务任务6-2描述:描述: 编写一个实现类似于编写一个实现类似于Windows的剪贴板功能及查看剪贴的剪贴板功能及查看剪贴板中文本的程序。程序的设计界面如图板中文本的程序。程序的设计界面如图6-9所示。该图中所示。该图中左边的文本框用来表示文档,该图右
51、边的文本框用来表示左边的文本框用来表示文档,该图右边的文本框用来表示剪贴板。图中的剪贴板。图中的“复制复制”、“剪切剪切”和和“粘贴粘贴”按钮分别按钮分别用来实现剪贴板的三个操作,用来实现剪贴板的三个操作,“清除清除”按钮用来清除剪贴按钮用来清除剪贴板的内容。图中下边的文本框用来存放在文档中选中的字板的内容。图中下边的文本框用来存放在文档中选中的字符个数。程序某时刻的运行界面如图符个数。程序某时刻的运行界面如图6-10所示。所示。GYC任务分析:GYC任务实现:GYC说明:(1)程序中把TextBox1中选中的文本直接赋值给TextBox2.Text属性,模拟复制功能。(2)文本框主要用于文本
52、的输入、显示、编辑和修改,它有许多属性,程序中的“SelectedText”就是它的一个属性。该控件的主要属性及其含义如下。u Text属性:Text属性是文本框最重要的属性,因为要显示的文本就包含在Text属性中。默认情况下,最多可在一个文本框中输入2048个字符。如果将MultiLine属性设置为True,则最多可输入32KB的文本。Text属性可以在设计时使用【属性】窗口设置,也可以在运行时用代码设置或者通过用户输入来设置。可以在运行时通过读取Text属性来获得文本框的当前内容。u MaxLength属性:该属性用来设置文本框允许输入字符的最大长度,该属性值为0时,不限制输入的字符数。u
53、 MultiLine属性:该属性用来设置文本框中的文本是否可以输入多行并以多行显示。值为True时,允许多行显示。值为False时不允许多行显示,一旦文本超过文本框宽度时,超过部分不显示。u HideSelection属性:该属性用来决定当焦点离开文本框后,选中的文本是否还以选中的方式显示,值为True,则不以选中的方式显示,值为False时将依旧以选中的方式显示。u ReadOnly属性:该属性用来获取或设置一个值,该值指示文本框中的文本是否为只读。值为True时为只读,值为False时可读可写。u PasswordChar属性:该属性是一个字符串类型,允许设置一个字符,运行程序时,将输入到
54、Text的内容全部显示为该属性值,从而起到保密作用,通常用来输入口令或密码。GYCu ScrollBars属性:该属性用来设置滚动条模式,有四种选择:ScrollBars.None为无滚动条,ScrollBars.Horizontal为有水平滚动条,ScrollBars.Vertical为有垂直滚动条,ScrollBars.Both为有水平和垂直滚动条。注意:只有当MultiLine属性为True时,该属性值才有效。在WordWrap属性值为True时,水平滚动条将不起作用u SelectionLength属性:该属性用来获取或设置文本框中选定的字符数。只能在代码中使用,值为0时,表示未选中任
55、何字符。u SelectionStart属性:该属性用来获取或设置文本框中选定的文本起始点。只能在代码中使用,第一个字符的位置为0,第二个字符的位置为1,依此类推。如果没有选中的文本,则表示插入点所在的位置。u SelectedText属性:该属性用来获取或设置一个字符串,该字符串指示控件中当前选定的文本。只能在代码中使用。u Lines:该属性是一个数组属性,用来获取或设置文本框控件中的文本行。即文本框中的每一行存放在Lines数组的一个元素中。u Modified:该属性用来获取或设置一个值,该值指示自创建文本框控件或上次设置该控件的内容后,用户是否修改了该控件的内容。值为True表示修改
56、过,值为False表示没有修改过。GYCGYCGYCGYCGYCGYCGYC图6-11 程序设计界面图6-12 程序运行界面GYC图6-13 程序设计界面 图6-14 程序运行界面GYC6.4 任务6-3:石头、剪刀、布游戏单选钮与复选框 图6-15 程序运行界面 图6-16 程序运行界面一图6-17 程序运行界面2GYCGYC组件名属性名属性值作用Label1Text玩家提示PictureBox1BorderStyleSizeModeFixed3DStretchImage显示玩家出手的图形Label2Text电脑提示PictureBox2BorderStyleSizeModeFixed3DS
57、tretchImage显示电脑出手的图形Label3不设置不设置显示输赢提示信息GroupBox1Text出手把控件分组RadioButton1(单选按钮)Text石头供玩家出“石头”RadioButton2Text剪刀供玩家出“剪刀”RadioButton3Text布供玩家出“布”CheckBox1(复选框)Text战报选中它显示战报,取消选中不显示战报GroupBox2Text战报把控件分组Label4Text赢提示TextBox1Text显示用户赢的次数Label5Text平手提示TextBox2Text显示平手的次数Label6Text输提示TextBox3Text显示用户输的次数Label7Text总次数:提示TextBox4Text显示与计算机交手的总次数Button1Text退出单击它将退出应用程序GYCGYCGYCGYCGYC图6-18 TextAlig
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026企业督察面试题及答案
- 2026人力经理面试题目及答案
- 合同股份制协议
- 天使投资回购协议书
- 2026事件中心面试题目及答案
- 2026太原公考面试题目及答案
- 2026特殊型人才面试题及答案
- 2026土地征地面试题目及答案
- 2026无小组面试题目及答案
- 预防出轨赔偿协议书
- 肿瘤科护理专业知识试题及答案
- 人教版数学六年级上册课内提升每日一练
- 信息安全实验指南
- 浙江杭州2020-2023年中考满分作文44篇
- 2024-2025学年湖北省武汉市洪山区五年级(下)期末数学试卷
- 江西鄱阳一中入学考试数学试卷
- 2025年GCP考试题库附参考答案ab卷
- 无锡市体育产业发展报告
- 肝性脑病疑难病例讨论
- 急诊科脑梗死护理查房
- 骨科牵引的护理与观察
评论
0/150
提交评论