版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、VB.NET程序设计,第9讲 常用标准控件的使用(一),本讲要点,窗体的属性、方法和事件,文本类控件的应用,按钮类控件的应用,列表类控件的应用,图片框控件的应用,进度条、滚动条、定时器、轨迹条等控件的应用,一、窗体与控件概述,Windows窗体和控件是利用VB .NET开发Windows应用程序的基础,在VB .NET的应用程序中,窗体和控件都是对象,都是类的实例。Windows窗体是可视化程序设计的基础界面,用来作为其它控件对象的载体或容器。控件是添加到窗体上的对象,是界面上的要素,每种类型的控件都有一套属性、方法和事件,都实现某种特定的功能。,一、窗体与控件概述,在前面章节的各任务中,已经
2、学习了窗体的一些知识,知道窗体就是Windows的窗口。也用到了一些常用的控件,如Label控件、TextBox控件、Button控件等,知道这些控件可以作为界面上的要素,都能实现一定的功能。在VB.NET中,Windows窗体和控件有很多,本章将通过5个任务详细介绍常用Windows窗体和控件的属性、方法、事件及使用方法。,任务:我的电子相册程序窗体与图片框,任务描述: 编写一个我的电子相册程序,程序的设计界面如图6-1所示。程序运行时将会出现如图6-2所示的“欢迎”对话框,,图6-2 程序运行时出现的“欢迎”对话框,图6-1 程序设计界面,任务:我的电子相册程序窗体与图片框,用户输入姓名后
3、单击“确定”按钮将会进入电子相册(不需要姓名,将无法进入),如图6-3所示。当用户改变窗体大小时,照片自动改变大小以填满窗体。,用户可以通过微调控件输入照片序号,也可以通过滚动条输入照片序号来显示相应的照片,并且微调按钮和滚动条的输入可以相互更新。,图6-3 程序运行界面,任务:我的电子相册程序窗体与图片框,显示的照片文件存放在应用程序目录下,文件名任意,照片的张数任意。只需单击“退出”按钮,将会出现6-4所示的“再见”对话框,单击“确定”按钮将退出应用程序。,图6-4 “再见”对话框,任务:我的电子相册程序窗体与图片框,窗体有一个事件Load,该事件在窗体加载时发生,故为了使程序刚开始执行时
4、就显示出欢迎对话框,可在该事件过程中调用InputBox函数来实现。窗体有一个名为Closing的事件,该事件在窗体关闭时发生,因此可在该事件中调用MsgBox函数显示出“再见”对话框。显示照片可使用PictureBox控件(图片框控件),为使照片填满图片框控件,必须设置图片框控件的SizeMode属性值为StretchImage,并且在窗体刚加载时或改变大小时,把图片框的大小设置与窗体的大小一致。当窗体的大小发生改变时,将会发生窗体的Resize事件,因此可以在该事件中重新设置图片框的大小。为了显示当前文件夹下的多张照片,可设置一个字符串数组用来存放所有照片的文件名,并通过Directory
5、类的GetFiles方法获得所有照片的文件名。通过序号显示照片时,只需把序号值减1作为存放照片文件名的数组元素的下标,对应的元素值就是要显示的照片文件名,通过程序把该照片文件在图片框中显示出来即可。 为实现HScrollBar控件(水平滚动条控件)与NumericUpDown控件(微调控件)的相互更改,可在NumericUpDown控件的ValueChanged事件中把它的Value属性值赋值给HScrollBar控件的Value属性,在HScrollBar控件的Scroll事件中把它的Value属性值赋值给NumericUpDown控件的Value属性。,任务:我的电子相册程序窗体与图片框,
6、任务实现:,1.启动VB.NET,新建一个项目,项目类型为“Windows应用程序”,项目的存放位置为“D:VBTASKCH06”,项目名为“Task6_1”,2.把Form1窗体的Text属性值设置为“我的相册”,把它的Name属性值设置为“frmPhoto”。单击“解决方案资源管理器”中的“Form1.VB”窗体,3.然后在属性窗口中把它文件名属性设置为“frmPhoto.vb”。然后执行【项目】【Task6_1属性】命令,在出现的“Task6_1属性页”对话框中把“启动对象”设置为“frmPhoto”,4.对照程序设计界面,为窗体添加控件并设置控件的属性。控件的属性设置如表6-1所示,任
7、务:我的电子相册程序窗体与图片框,表6-1 任务6-1控件属性设置及其功能,任务:我的电子相册程序窗体与图片框,说明:,任务 4:,在代码“public class frmphoto”的上面输入如下语句。 Imports System.io,说明: 这条语句的作用是引入命名空间“System.io”,在该命名空间中有许多与文件有关的类,本任务中要取得在当前文件夹中存放的照片文件名,需用到“Directory”类,因此需把该命名空间引入到程序中来。,任务 5:,定义模块级变量或数组,如下。,Dim ClientName As String 存放用户姓名 Dim PhotoName() As St
8、ring 存放在当前文件夹中取出的照片文件名 Dim PicCount As Integer 存放当前文件夹中的照片数量,任务 6:,编写窗体的Load事件过程代码,如下,Private Sub frmPhoto_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 循环直到用户输入姓名 Do ClientName = InputBox(嗨,朋友!欢迎您来到我的电子相册!, 欢迎!, ) Loop While Len(Trim(ClientName) = 0 把用户的姓名作为欢迎
9、词的一部分显示在标题栏上 Me.Text = 欢迎 SizeMode属性:该属性用来决定图像的显示模式。其取值有四种情况,取值 及含义如表6-2所示。各种模式下的图片显示样式如图6-5所示。,表6-2 SizeMode属性的取值及其含义,图6-5 图片框显示模式示例,任务 7:,编写窗体的Closing事件过程代码,如下。 Private Sub frmPhoto_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing MsgBox(欢迎您再
10、次来到我的相册,再见!, , 再见) 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 Picture
11、Box1.Width = Me.ClientSize.Width End Sub,任务 8:,说明:,(1)在事件代码中通过给图片框PictureBox1的Top和Left属性赋值0,使图片框靠左上角显示。通过给图片框PictureBox1的Height和Width属性赋值,使之填满整个窗体。这样程序运行时,用户改变窗体的大小,照片的大小也相应地变化。 (2)ClientSize是窗体的一个属性,其作用是用户区的大小。窗体的属性有很多,下面着重介绍窗体的常用属性。,Name属性:用来获取或设置窗体的名称,在应用程序中可通过该属性来引用窗体。 WindowState属性:用来获取或设置窗体的窗口
12、状态。取值有三种:FormWindowState.Normal(窗体正常显示)、FormWindowState.Minimized(窗体以最小化形式显示)和FormWindowState.Maximized(窗体以最大化形式显示)。 StartPosition属性:用来获取或设置运行时窗体的起始位置。其取值及含义如表6-3所示。默认的起始位置是 FormStartPosition.WindowsDefaultLocation。,表6-3 窗体的起始位置取值及其含义,函数的属性:,函数的属性:,AcceptButton属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当用户按 ENTER
13、键时就相当于单击了窗体上的该按钮。 CancelButton属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当用户按ESC键时就相当于单击了窗体上的该按钮。 Modal属性:该属性用来设置窗体是否为有模式显示窗体。如果有模式地显示该窗体,该属性值为 True; 否则为 False。当有模式地显示窗体时,用户只能和模式窗体进行交互。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后才能与另一窗体进行交互。有模式显示的窗体通常用作应用程序中的对话框。 ActiveControl属性:用来获取或设置容器控件中的活动控件。窗体也是一种容器控件。 ActiveMdiChild属性:用来获取多
14、文档界面(MDI)的当前活动子窗口。 AutoScroll属性:用来获取或设置一个值,该值指示窗体是否实现自动滚动。如果此属性值设置为 True,则当任何控件位于窗体工作区之外时,会在该窗体上显示滚动条。另外,当自动滚动打开时,窗体的工作区自动滚动,以使具有输入焦点的控件可见。AcceptButton属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当用户按 ENTER 键时就相当于单击了窗体上的该按钮。 CancelButton属性:该属性用来获取或设置一个值,该值是一个按钮的名称,当用户按ESC键时就相当于单击了窗体上的该按钮。 Modal属性:该属性用来设置窗体是否为有模式显示窗体
15、。如果有模式地显示该窗体,该属性值为 True; 否则为 False。当有模式地显示窗体时,用户只能和模式窗体进行交互。必须隐藏或关闭模式窗体(通常是响应某个用户操作),然后才能与另一窗体进行交互。有模式显示的窗体通常用作应用程序中的对话框。,函数的属性:,ActiveControl属性:用来获取或设置容器控件中的活动控件。窗体也是一种容器控件。 ActiveMdiChild属性:用来获取多文档界面(MDI)的当前活动子窗口。 AutoScroll属性:用来获取或设置一个值,该值指示窗体是否实现自动滚动。如果此属性值设置为 True,则当任何控件位于窗体工作区之外时,会在该窗体上显示滚动条。另
16、外,当自动滚动打开时,窗体的工作区自动滚动,以使具有输入焦点的控件可见。 BackColor属性:用来获取或设置窗体的背景色。 BackgroundImage属性:用来获取或设置窗体的背景图像。 Enabled属性:用来获取或设置一个值,该值指示控件是否可以对用户交互作出响应。如果控件可以对用户交互作出响应,则为 True;否则为 False。默认值为 True。 Font属性:用来获取或设置窗体或控件显示的文本的字体。 ForeColor属性:用来获取或设置窗体或控件的前景色。 IsMdiChild属性:获取一个值,该值指示该窗体是否为多文档界面 (MDI) 子窗体。值为True时,是子窗体
17、,值为False时,不是子窗体。IsMdiContainer属性:获取或设置一个值,该值指示窗体是否为多文档界面 (MDI) 中的子窗体的容器。值为True时,是子窗体的容器,值为False时,不是子窗体的容器。,函数的属性:,KeyPreview属性:该属性用来获取或设置一个值,该值指示在将按键事件传递到具有焦点的控件前,窗体是否将接收该事件。值为True时,窗体将接收按键事件,值为False时,窗体不接收按键事件。 MdiChildren属性:数组属性。数组中的每个元素表示以此窗体作为父窗体的多文档界面 (MDI) 子窗体。 MdiParent属性:该属性用来获取或设置此窗体的当前多文档界
18、面 (MDI) 父窗体。 ShowInTaskbar属性:该属性用来获取或设置一个值,该值指示是否在 Windows 任务栏中显示窗体。 Visible属性:该属性获取或设置一个值,该值指示是否显示该窗体或控件。值为True时显示窗体或控件,值为False时不显示。 Capture属性:如果该属性值为True,则鼠标就会被限定只由此控件响应,不管鼠标是否在此控件的范围内。,函数的属性:,(3)Load、Closing和Resizing均是窗体的事件名,窗体能够响应的事件有很多,下面介绍窗体常用的事件及其发生场合。,Load事件:该事件在窗体加载到内存时发生,即在第一次显 示窗体前发生。 Act
19、ivated事件:该事件在窗体激活时发生。 Deactivate事件:该事件在窗体失去焦点成为不活动窗体时 发生。 Resize事件:该事件在改变窗体大小时发生。 Paint事件:该事件在重绘窗体时发生。 Click事件:该事件在用户单击窗体时发生。 DoubleClick事件:该事件在用户双击窗体时发生。 Closed事件:该事件在关闭窗体时发生。,(4)语句中的“Panel1.Height”使用了Panel1控件的Height方法。Panel控件通常作为面板存在,用来容纳其它控件。它除了具有Height、Top、Left、Width等常用属性以外,还有一个重要属性Dock,用来指出Pane
20、l控件停泊在哪个边上,该属性的设置如图6-6所示,可通过单击相应的方块来设置停泊属性。,图6-6 Dock属性的设置,任务 9:,编写“退出”按钮的Click事件过程代码 :,说明:,程序中语句“Me.Close()”中的Me代表的是当前窗体,Close是窗体的一个方法,其作用是关闭窗体。窗体的方法也有很多,下面介绍一些窗体的最常用方法。,任务 10:,运行程序,运行界面,将会出现如图6-2所示的对话框,用户输入姓名后单击“确定”按钮,将会出现如图6-3所示程序运行界面,改变窗体的大小,照片将会相应地改变大小。单击“退出”按钮,将会出现如图6-4的对话框,单击“确定”按钮,程序退出。,图6-2
21、 程序运行时出现的“欢迎”对话框,图6-3 程序运行界面,图6-4 “再见”对话框,任务 11:,编写NumericUpDown1控件的ValueChanged事件过程代码,如下 :,Private Sub NumericUpDown1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NumericUpDown1.ValueChanged Static cs As Integer = 0 用来判断是否是第一个执行该事件过程的代码 If cs 0 Then 如果不是第一次执行该事件过
22、程代码,将显示图片 PictureBox1.Image = Image.FromFile(PhotoName(NumericUpDown1.Value - 1) 使水平滚动条的值与NumericUpDown1.Value的值一致 HScrollBar1.Value = NumericUpDown1.Value End If cs = 1 执行一次后Cs 变量为1 End Sub,说明:,(1)由于在初始化时,要发生一次“ValueChanged”事件,在此时若访问其它控件将会出现错误。因此在本事件过程中,定义了一个静态变量cs,初始值为0,在第一次执行时,若其值为0则什么都不执行。第一次执行时
23、,把cs的值设置为1,下一次执行该过程时,cs的值依旧是上一次退出时的值1,因此就显示相应序号的相片了。,(2)NumericUpDown控件看起来像是一个文本框与一对上下箭头按钮的组合。用户可以通过单击向上和向下按钮、按向上和向下箭头键来增大和减小数字,用户也可以直接输入数字。单击向上箭头键时,值向最大值方向增加;单击向下箭头键时,值向最小值方向减少。 NumericUpDown控件的常用属性如下: DecimalPlaces:获取或设置该控件中显示的小数位数。 Hexadecimal:获取或设置一个值,该值指示该控件是否以十六进制格式显示所包含的值。值为True时,以十六进制的形式显示值,
24、值为False时,以十进制的形式显示值。 Increment:获取或设置单击向上或向下按钮时,该控件递增或递减的值。 Maximum:获取或设置该控件的最大值。 Minimum:获取或设置该控件的最小值。 Value:获取或设置该控件的当前值。 NumericUpDown控件的常用事件响应的主要事件有:ValueChanged(在Value属性值发生改变时发生)、GotFocus(在获得焦点时发生)、LostFocus(在失去焦点时发生)等。,任务 12:,Private Sub HScrollBar1_Scroll(ByVal sender As System.Object, ByVal e
25、 As System.Windows.Forms.ScrollEventArgs) Handles HScrollBar1.Scroll Static cs As Integer = 0 用来判断是否是第一个执行该事件过程的代码 If cs 0 Then 如果不是第一次执行该事件过程代码,将显示图片 PictureBox1.Image = Image.FromFile(PhotoName(NumericUpDown1.Value - 1) 使NumericUpDown1.Value的值与水平滚动条的值一致 NumericUpDown1.Value = HScrollBar1.Value End If cs = 1 执行一次后Cs 变量为1 End Sub,任务 13:,编写HScrollBar1_Scroll的ValueChanged事件代码,说明: (1)滚动条(ScrollBar)是大部分Windows应用程序中都具有的控件,是Windows界面的一种常见元素,通常分为水平滚动条(HScrollBar)垂直滚动条(VScrollBar)。HScrollBar在工具箱中的图标是“”,VScrollBar控件在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025中国能建集团装备有限公司招聘1人笔试历年常考点试题专练附带答案详解
- 2026年植物类幼儿园
- 2026年幼儿园教案防拐骗
- 2026年幼儿园918教育
- 2025福建福州市江南智慧城市建设运营有限公司招聘9人笔试参考题库附带答案详解
- 2025福建漳州市文旅康养集团有限公司招聘24人笔试参考题库附带答案详解
- 2025福建南平市武夷山市供销总公司招聘3人笔试参考题库附带答案详解
- 2025湖南长沙振望投资发展有限公司招聘8人笔试参考题库附带答案详解
- 2025浙江绍兴市嵊州市国有企业社会团体招聘4人笔试参考题库附带答案详解
- 2025河南大河控股有限公司招聘3人笔试参考题库附带答案详解
- 2026年全国材料员职业技能水平测试真题及模拟试题(附答案)
- 2024年惠州市龙门县事业单位招聘笔试真题(能力测试)含答案及解析
- 2026中国邮政储蓄银行广西区分行春季校园招聘备考题库及答案详解【历年真题】
- 山东省青岛市西海岸新区达标名校2026届中考数学最后一模试卷含解析
- 2025-2026学年四川省德阳市中考物理模拟试题(含答案解析)
- TSG 92-2026 承压类特种设备安全附件安全技术规程
- 2024年二级注册结构工程师专业考试试题及答案(下午卷)
- 2023年南山中学和南山中学实验学校自主招生考试数学试题
- 梅毒知识讲座
- 实验室意外事故应急处置和应急预案课件
- 《电力可靠性管理办法》参考试题库(含答案)
评论
0/150
提交评论