VB其他常用的语句及控件课件.ppt

上传人:知****量 文档编号:91521400 上传时间:2023-05-27 格式:PPT 页数:84 大小:1.87MB
返回 下载 相关 举报
VB其他常用的语句及控件课件.ppt_第1页
第1页 / 共84页
VB其他常用的语句及控件课件.ppt_第2页
第2页 / 共84页
点击查看更多>>
资源描述

《VB其他常用的语句及控件课件.ppt》由会员分享,可在线阅读,更多相关《VB其他常用的语句及控件课件.ppt(84页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 本章主要内容 其他一些常用语句其他一些常用语句 框架框架(Frame)滚动条滚动条(ScrollBar)图形方法和图形控件图形方法和图形控件 菜单设计菜单设计 工具栏和状态栏工具栏和状态栏 键盘与鼠标事件键盘与鼠标事件 对话框对话框 通用对话框通用对话框(CommonDialog)文件系统控件文件系统控件第第1010章章 其他常用的语句及控件其他常用的语句及控件 10.1.1 强制显式声明变量语句强制显式声明变量语句(Option Explicit)避免因为写错变量名而导致错误避免因为写错变量名而导致错误 例如,例如,交换变量交换变量a a、b b的值的值 Temp=aTemp=a a=b

2、a=b b=Tmp b=Tmp 把把TempTemp写错成写错成TmpTmp 运行结果是使运行结果是使b b的值为的值为0 0。若改成:。若改成:Option ExplicitOption Explicit 模块级声明模块级声明 Dim a As Integer,b As Integer,Temp As Integer Dim a As Integer,b As Integer,Temp As Integer .Temp=a Temp=a a=b a=b b=Tmp b=Tmp 运行时运行时VBVB就会发出警告就会发出警告“Variable not defined”(“Variable not

3、 defined”(变量未变量未定义定义),只有把,只有把TmpTmp改为改为TempTemp后才恢复正常后才恢复正常 10.1 10.1 其他常用语句其他常用语句 格式:格式:Def类型标志类型标志 字母范围字母范围 功能:在模块级声明段中定义变量功能:在模块级声明段中定义变量(相应数据类型相应数据类型)示例:示例:DefInt m-P 10.1.3 自定义数据类型自定义数据类型 用户可以利用用户可以利用Type语句定义自己的数据类型语句定义自己的数据类型 Private|Public Type 数据类型名数据类型名 元素名元素名1 As 类型名类型名1 元素名元素名2 As 类型名类型名2

4、 End Type 10.1.2 定义变量类型定义变量类型 所谓所谓“枚举枚举”是指将变量的值一一列举出来,变量的值只限是指将变量的值一一列举出来,变量的值只限于列举出来的值于列举出来的值 Public|Private Enum 枚举类型名枚举类型名 成员名成员名1=常数表达式常数表达式 成员名成员名2=常数表达式常数表达式 End Enum 10.1.410.1.4 定义枚举类型定义枚举类型 例例10.1 10.1 应用枚举类型示例应用枚举类型示例 输入一个数字表示星期几,判断输出是输入一个数字表示星期几,判断输出是“休息日休息日”还是还是“工作工作日日”Private Enum weekd

5、ays 定义定义Weekdays为枚举类型为枚举类型 Sun Mon Tue Wed Thu Fri Sat End Enum Private Sub Command1_Click()Dim myday As weekdays 定义定义Myday为为Weekdays枚举类型枚举类型 myday=Val(InputBox(今天是星期几今天是星期几(06)输入输入06 If myday Sat Then MsgBox 输入的星期数错误输入的星期数错误 Else If myday=Sun Or myday=Sat Then MsgBox 休息日休息日 Else MsgBox 工作日工作日 End I

6、f End If End Sub 2.On.GoTo语句语句 On.GoTo语句用来实现分支选择控制语句用来实现分支选择控制(类似于类似于Select.End Select)语法格式:语法格式:On 数值表达式数值表达式 GoTo 行号表行号表|标号表标号表 功能:根据功能:根据“数值表达式数值表达式”的值,控制转移到几个指定的语句的值,控制转移到几个指定的语句行中的一个语句行。行中的一个语句行。例如例如 On K GoTo Line1,Line2,Line3 执行过程:执行过程:将将K四舍五入取整,如果其值为四舍五入取整,如果其值为1,则转移到,则转移到Line1标号行;如果为标号行;如果为

7、2,则转移到,则转移到Line2标号行;如果为标号行;如果为3,则转移到,则转移到Line3标号行。如果标号行。如果K的值等于的值等于0或大于或大于3,则自动执行本语句的下,则自动执行本语句的下一个语句一个语句 1.直接输出直接输出 把信息直接送往打印机把信息直接送往打印机 格式:格式:Printer.Print 表达式表表达式表 (1)Page属性:设置当前页号属性:设置当前页号 格式:格式:Printer.Page (2)NewPage方法:实现换页操作方法:实现换页操作 格式:格式:Printer.NewPage (3)EndDoc方法:结束文件打印方法:结束文件打印 格式:格式:Pri

8、nter.EndDoc 10.1.6 打印机输出打印机输出 例例10.3 在打印机上打印文字在打印机上打印文字“计算机程序设计计算机程序设计”Private Sub Command1_Click()Printer.FontName=隶书隶书 Printer.FontSize=12 Printer.Print“计算机程序设计计算机程序设计”将文本放到将文本放到Printer对象中对象中 Printer.EndDoc 打印结束打印结束 End Sub VB只有在发生事件时才执行相应的事件过程,如果没有只有在发生事件时才执行相应的事件过程,如果没有事件发生,则应用程序处于事件发生,则应用程序处于“闲

9、置闲置”状态状态 所谓闲置循环,就是当程序处于闲置状态时,用一个循所谓闲置循环,就是当程序处于闲置状态时,用一个循环来执行某些操作环来执行某些操作 为使在闲置循环中也能响应其他操作和事件,为使在闲置循环中也能响应其他操作和事件,VB提供提供了一个了一个DoEvents语句,其格式为:语句,其格式为:窗体号窗体号=DoEvents()功能:在闲置循环中,通过功能:在闲置循环中,通过DoEvents语句可以把控制权语句可以把控制权交给系统去处理所发生的事件交给系统去处理所发生的事件 10.1.7 10.1.7 闲置循环与闲置循环与DoEventsDoEvents语句语句 (3)把把Sub Main

10、设置为启动对象设置为启动对象 程序运行后,进入闲置循环,此时将在文本框程序运行后,进入闲置循环,此时将在文本框Text1中中不断地显示系统时间。不断地显示系统时间。由于加入由于加入DoEvents函数,则可以在执行闲置循环过程函数,则可以在执行闲置循环过程中执行其他操作,如重设窗体的大小及最大化中执行其他操作,如重设窗体的大小及最大化/最小化,还最小化,还能响应命令按钮能响应命令按钮Command1和和Command2的单击事件等。的单击事件等。当其他操作完成后,又会回到闲置循环中继续执行当其他操作完成后,又会回到闲置循环中继续执行 1.框架的用途框架的用途 作为容器放置其他控件对象,将这些控

11、件对象分成可标作为容器放置其他控件对象,将这些控件对象分成可标识的控件组;框架内的所有控件将随框架一起移动、显示识的控件组;框架内的所有控件将随框架一起移动、显示和消失。和消失。2.常用属性常用属性 Name属性和属性和Caption属性属性 3.事件事件 可以响应可以响应Click和和Dblclick事件。事件。在应用程序中一般不需要编写有关框架的事件过程在应用程序中一般不需要编写有关框架的事件过程 10.2 10.2 框架框架(Frame)(Frame)(2)(2)编写程序代码编写程序代码 功能要求:功能要求:在三个框架中分别选择字体、字号在三个框架中分别选择字体、字号和颜色,单击和颜色,

12、单击“确定确定”按钮后,文本框中的文本相按钮后,文本框中的文本相应属性会发生变化应属性会发生变化 Private Sub Form_Load()Option1.Value=True Option3.Value=True Option5.Value=True Text1.FontName=宋体宋体 Text1.FontSize=16 Text1.ForeColor=RGB(0,0,255)End Sub Private Sub Command1_Click()If Option1.Value Then Text1.FontName=宋体宋体 Else Text1.FontName=幼圆幼圆 En

13、d If If Option3.Value Then Text1.FontSize=16 Else Text1.FontSize=20 End If If Option5.Value Then Text1.ForeColor=RGB(0,0,255)Else Text1.ForeColor=RGB(255,0,0)End If End Sub10.3 10.3 滚动条滚动条 1.滚动条的用途滚动条的用途 为不能自动支持滚动的应用程序和控件提供滚动功能,也可为不能自动支持滚动的应用程序和控件提供滚动功能,也可作为数据输入的工具。作为数据输入的工具。水平滚动条水平滚动条(HScrollBar)和和

14、垂直滚动条垂直滚动条(VScrollBar)最小值最小值(Min),最大值,最大值(Max);移动滚动块时,代表的值随之;移动滚动块时,代表的值随之改变改变 2.常用属性常用属性 (1)Min、Max属性:属性:Min属性的默认值为属性的默认值为0,Max属性的默认属性的默认值为值为32767。(2)Value属性:设置滚动块在滚动条中的位置值属性:设置滚动块在滚动条中的位置值 (3)Smallchange最小变动值属性最小变动值属性 (4)LargeChange最大变动值属性最大变动值属性 3.事件事件 滚动条控件可以识别滚动条控件可以识别10个事件,其中最常用的是个事件,其中最常用的是Sc

15、roll和和Change事件事件 (1)Scroll事件:当用鼠标拖动滚动块时,即触发事件:当用鼠标拖动滚动块时,即触发Scroll事件事件 (2)Change事件:当改变事件:当改变Value属性值时,即触发属性值时,即触发Change事件事件 当释放滚动块、单击滚动条内空白处或滚动箭头当释放滚动块、单击滚动条内空白处或滚动箭头时,时,Change事件就会发生。事件就会发生。例例10.6 10.6 设计一个调色板应用程序设计一个调色板应用程序 建立三个水平滚动条作为建立三个水平滚动条作为红、绿、蓝红、绿、蓝三种基本颜色的输三种基本颜色的输入工具,合成的颜色显示在右边的标签中入工具,合成的颜色

16、显示在右边的标签中(图图10.17),用其背,用其背景颜色属性景颜色属性BackColor值的改变实现合成颜色的调色值的改变实现合成颜色的调色 (2)编写程序代码编写程序代码 功能要求:功能要求:通过操作通过操作(单击或拖动单击或拖动)滚动条,直接修改滚动条,直接修改RGB设置,从而得到标签背景所需的颜色设置,从而得到标签背景所需的颜色 Private Sub HScroll1_Change()Label1.BackColor=RGB(HScroll1.Value,_ HScroll2.Value,HScroll3.Value)End Sub Private Sub HScroll2_Chan

17、ge()Label1.BackColor=RGB(HScroll1.Value,_ HScroll2.Value,HScroll3.Value)End Sub Private Sub HScroll3_Change()Label1.BackColor=RGB(HScroll1.Value,_ HScroll2.Value,HScroll3.Value)End Sub 4种图形控件:种图形控件:PictureBox控件、控件、Image控件、控件、Shape控控件和件和Line控件;控件;图形方法图形方法 10.4.1 坐标系坐标系 每个对象都定位于存放它的容器内每个对象都定位于存放它的容器内

18、每个容器都有一个坐标系,它包括坐标原点,每个容器都有一个坐标系,它包括坐标原点,x坐标轴和坐标轴和y坐标轴,默认的坐标轴,默认的坐标原点坐标原点(0,0)在容器对象的左上角在容器对象的左上角 默认单位为默认单位为Twip(缇缇),还可以使用磅、像素、厘米等单,还可以使用磅、像素、厘米等单位位 窗体的实际可用的窗体的实际可用的高度和宽度高度和宽度由由ScaleHeight和和ScaleWidth属性确定属性确定 CurrentX和和CurrentY属性属性 10.410.4 图形方法和图形控件图形方法和图形控件 使用使用Pset(画点画点)、Line(画线画线)、Circle(画圆画圆)等图形方

19、法,等图形方法,可以方便地在窗体和图片框上绘制简单的图形可以方便地在窗体和图片框上绘制简单的图形 1.Pset(画点画点)方法方法 格式:格式:对象名对象名.Pset Step(x,y),颜色颜色 功能:在对象的指定位置功能:在对象的指定位置(x,y)上按选定的颜色画点上按选定的颜色画点 参数参数Step指定指定(x,y)是相对于当前坐标点的坐标是相对于当前坐标点的坐标 示例:示例:下列语句能在坐标位置下列语句能在坐标位置(500,900)处画一个红点:处画一个红点:Pset(500,900),RGB(255,0,0)该语句等价于:该语句等价于:CurrentX=100:CurrentY=10

20、0 Pset Step(400,800),RGB(255,0,0)10.4.2 10.4.2 图形方法图形方法 3.Circle(画圆画圆)方法方法 格式:格式:对象名对象名.Circle Step(x,y),半径,半径,颜色,起点,终点,纵横,颜色,起点,终点,纵横比比 功能:功能:在对象上画圆、椭圆或圆弧在对象上画圆、椭圆或圆弧 说明:说明:(1)(x,y)是圆、椭圆或圆弧的中心坐标,是圆、椭圆或圆弧的中心坐标,“半径半径”是是圆、椭圆或圆弧的半径。圆、椭圆或圆弧的半径。(2)“起点起点”、“终点终点”(以弧度为单位以弧度为单位)指定弧或扇形的起点指定弧或扇形的起点或终点位置,其范围从或终

21、点位置,其范围从-2到到2。“起点起点”的默认值为的默认值为0,“终终点点”的默认值为的默认值为2。正数画弧,负数画扇形。正数画弧,负数画扇形。(3)纵横比纵横比为圆的纵轴和横轴的尺寸比。当纵横比大于为圆的纵轴和横轴的尺寸比。当纵横比大于1时,时,椭圆沿垂直方向拉长;当纵横比小于椭圆沿垂直方向拉长;当纵横比小于1时,椭圆沿水平方向拉时,椭圆沿水平方向拉长。纵横比的默认值为长。纵横比的默认值为1,将产生一个标准圆。,将产生一个标准圆。(4)可以省略中间的某个参数,但不能省略分隔参数的逗号可以省略中间的某个参数,但不能省略分隔参数的逗号例10.7 在窗体上画出一个扇形、圆、椭圆在窗体上画出一个扇形

22、、圆、椭圆 Private Sub Form_Load()Const PI=3.14159 Show Circle(2500,1500),1200,vbBlue,-PI,-PI/2 Circle Step(-600,-600),600 Circle Step(0,0),600,5/25 End Sub 3.图片框的使用图片框的使用 (1)显示和消除图形:见显示和消除图形:见Picture属性属性 (2)用用Print方法向图片框输出文本方法向图片框输出文本 (3)用图形方法在图片框中画图形用图形方法在图片框中画图形 可以使用可以使用Circle(画圆画圆)、Line(画线画线)、Pset(画点

23、画点)等等方法在图片框中画图形方法在图片框中画图形 示例示例 Private Sub Form_Load()Show Picture1.Print 在图片框内写字和画圆在图片框内写字和画圆 Picture1.Circle(1200,1000),600,RGB(0,0,255)Picture1.PSet(1200,1000),RGB(255,0,0)End Sub 10.4.410.4.4 图像框图像框(Image)(Image)图像框图像框(Image)控件的作用与图片框控件的作用与图片框PictureBox控件相似,控件相似,但它只能用于显示图形,不能作为其他控件的容器但它只能用于显示图形,

24、不能作为其他控件的容器 10.4.510.4.5 ShapeShape形状控件形状控件 VB提供了画图形的基本工具,如提供了画图形的基本工具,如Shape(形状控形状控件件)、Line(线控件线控件)。Shape控件和控件和Line控件只用于表面装饰,不支控件只用于表面装饰,不支持任何事件。持任何事件。10.4.610.4.6 LineLine直线控件直线控件 Line直线控件可用来在窗体、框架和图片框中直线控件可用来在窗体、框架和图片框中绘制简单的线段。绘制简单的线段。(1)分析分析:本例分别以:本例分别以Second、Minite和和Hour函数取得系统时函数取得系统时间间Time的秒、分

25、和时数,再利用计时器控件,按一定时间间隔把时的秒、分和时数,再利用计时器控件,按一定时间间隔把时间数转换为图形指针位置和显示出来间数转换为图形指针位置和显示出来 (2)创建应用程序的用户界面创建应用程序的用户界面 计时器计时器(Timer1),形状控件,形状控件(Shape1),三条线控件,三条线控件(LineS,LineM,LineH),四个标签,四个标签(表示数字表示数字)例例10.810.8 设计一个走动的时钟设计一个走动的时钟 (3)设置对象属性设置对象属性 Timer1的的Interval属性为属性为1000(1秒秒)Shape1的的Shape属性为属性为3-Circle(圆形圆形)

26、,FillStyle属性为属性为0-Solid(实心实心)LineS,LineM,LineH的的BorderWidth属性为属性为1,2,4 (4)编写程序代码编写程序代码 Option Explicit Const pi=3.14159 Private len_S As Single,len_M As Single,len_H As Single Private Sub Form_Load()先取各指针的长度先取各指针的长度 秒针长度秒针长度 len_S=Sqr(LineS.Y2-LineS.Y1)2+(LineS.X2-LineS.X1)2)分针长度分针长度 len_M=Sqr(LineM

27、.Y2-LineM.Y1)2+(LineM.X2-LineM.X1)2)时针长度时针长度 len_H=Sqr(LineH.Y2-LineH.Y1)2+(LineH.X2-LineH.X1)2)Call Timer1_Timer End Sub Private Sub Timer1_Timer()定时器的定时事件过程定时器的定时事件过程 Dim s As Single,m As Single,h As Single Form1.Caption=Time s=Second(Time)m=Minute(Time)h=Hour(Time)+m/60 LineS.X2=LineS.X1+len_S*Si

28、n(pi*s/30)绘制秒针绘制秒针 LineS.Y2=LineS.Y1-len_S*Cos(pi*s/30)LineM.X2=LineM.X1+len_M*Sin(pi*m/30)绘制分针绘制分针 LineM.Y2=LineM.Y1-len_M*Cos(pi*m/30)If h=12 Then h=h-12 LineH.X2=LineH.X1+len_H*Sin(pi*h/6)绘制时针绘制时针 LineH.Y2=LineH.Y1-len_H*Cos(pi*h/6)End Sub 计算指针位置的方法计算指针位置的方法 s秒秒 K 60秒秒 2 K=2S/60=s/30 x2=x1+x=x1+L

29、*Cos(/2 k)=x1+L*Sink LineM.X2=LineM.X1+Len_s*Sin(pi*s/30)xx2x1K (s秒)/2-K 10.5 10.5 菜单设计菜单设计 应用程序通过菜单为用户提供一组命令应用程序通过菜单为用户提供一组命令 菜单一般分为两种:即菜单一般分为两种:即下拉式菜单下拉式菜单和和弹出式菜单弹出式菜单 10.5.1 下拉式菜单下拉式菜单 1.下拉式菜单的结构下拉式菜单的结构 下拉式菜单基本结构包括:顶层菜单、菜单项和子菜单下拉式菜单基本结构包括:顶层菜单、菜单项和子菜单子菜单项子菜单提示符访问键快捷键分隔线复选标记菜单项顶层菜单 10.5.2 10.5.2

30、菜单编辑器菜单编辑器 设计菜单的工具设计菜单的工具 启动菜单编辑器的方法启动菜单编辑器的方法 菜单编辑器分为上、下两部分,菜单编辑器分为上、下两部分,上半部分上半部分用来用来设置属性设置属性,下半部分下半部分是是菜单显示区菜单显示区,用来显示用户输入的菜单内容。,用来显示用户输入的菜单内容。“标题标题”(Caption)输入框输入框 供输入标题,也会同时显示在菜单显示区。菜单项的访问键,供输入标题,也会同时显示在菜单显示区。菜单项的访问键,用用“(&字符字符)”格式格式 “名称名称”(Name)输入框输入框 “索引索引”(Index)输入框输入框 “快捷键快捷键”列表框列表框 “帮助上下文帮助

31、上下文ID”输入框输入框 “协调位置协调位置”列表框列表框 “复选复选”框框 “有效有效”框框 “可见可见”框框 “显示窗口列表显示窗口列表”框框 菜单显示区。内缩符号菜单显示区。内缩符号(4个点个点“”)编辑按钮编辑按钮 共有共有7个按钮个按钮 分隔线分隔线 10.5.3 菜单的菜单的Click事件事件 除分隔线以外的所有菜单元素都能识别除分隔线以外的所有菜单元素都能识别Click事件。事件。例例10.9 编一程序,进行两个操作数的算术运算练习编一程序,进行两个操作数的算术运算练习 设计步骤如下:设计步骤如下:(1)创建应用程序的用户界面和设置对象属性创建应用程序的用户界面和设置对象属性 菜

32、单栏向用户菜单栏向用户提供功能选择,包括提供功能选择,包括运算数的位数,运算符类型和退出程序运算数的位数,运算符类型和退出程序 菜单设计菜单设计 各个菜单项名称各个菜单项名称 (2)编写程序代码编写程序代码 功能要求功能要求 Option Explicit 显式声明变量显式声明变量 Dim sel1 As Integer,sel2 As String Dim r1 As Long Private Sub Form_Load()sel1=0 位数标记位数标记 sel2=运算标记运算标记 Randomize End Sub Private Sub Mnu11_Click()sel1=1 设置位数标

33、记设置位数标记 End Sub Private Sub Mnu12_Click()sel1=10 End SubPrivate Sub Mnu13_Click()sel1=100End SubPrivate Sub Mnu21_Click()sel2=+设置运算标记设置运算标记End SubPrivate Sub Mnu22_Click()sel2=-End SubPrivate Sub Mnu23_Click()sel2=*End Sub Private Sub Command1_Click()命题命题按钮单击事件按钮单击事件 Dim a As Long,b As Long If sel1=

34、0 Or sel2=Then MsgBox 先选择运算数的位数和运算类型先选择运算数的位数和运算类型 Exit Sub End If a=sel1+Int(9*sel1*Rnd)随机生成指定位数的操作数随机生成指定位数的操作数 b=sel1+Int(9*sel1*Rnd)Label1.Caption=Str(a)+sel2+Str(b)+=组成算式组成算式 Select Case sel2 求运算结果求运算结果r1 Case+r1=a+b Case-r1=a-b Case*r1=a*b End Select Text1.Text=Text1.SetFocusEnd SubPrivate Sub

35、 Command2_Click()答题答题按钮单击事件按钮单击事件 Dim r2 As Long If Text1.Text=Then MsgBox 请输入答案请输入答案 Exit Sub End If r2=Val(Text1.Text)读取用户的答案读取用户的答案 If r1=r2 Then 判断答案判断答案 Label3.Caption=正确正确 Else Label3.Caption=错误错误 End IfEnd SubPrivate Sub Mnu30_Click()“退出退出”菜单命令菜单命令 EndEnd Sub 10.5.4 10.5.4 运行时改变菜单属性运行时改变菜单属性

36、1.使菜单命令有效或无效使菜单命令有效或无效 所有的菜单项都具有所有的菜单项都具有Enabled属性,当该属性为属性,当该属性为True(默认默认值值)时,有效;若为时,有效;若为False时,菜单项会变暗,菜单命令无效。时,菜单项会变暗,菜单命令无效。举例:举例:Mnu30.Enabled=False 2.显示菜单项的复选标记显示菜单项的复选标记 使用菜单项的使用菜单项的Checked属性,可以设置复选标记。属性,可以设置复选标记。举例:举例:Mnu31.Checked=True 3.使菜单项不可见使菜单项不可见 举例:举例:Mnu30.Visible=True 10.5.5 10.5.5

37、弹出式菜单弹出式菜单 弹出式菜单又称为快捷菜单。单击鼠标右键。可以根据右弹出式菜单又称为快捷菜单。单击鼠标右键。可以根据右击鼠标时的位置弹出不同的菜单。击鼠标时的位置弹出不同的菜单。使用使用VB提供的菜单编辑器,把某个菜单设置成隐藏。提供的菜单编辑器,把某个菜单设置成隐藏。创建快捷菜单的步骤如下:创建快捷菜单的步骤如下:(1)使用菜单编辑器设计菜单使用菜单编辑器设计菜单 (2)设置顶层菜单项为不可见设置顶层菜单项为不可见,即不选中菜单编辑器里的,即不选中菜单编辑器里的“可见可见”选项或在属性窗口中设定选项或在属性窗口中设定Visible属性为属性为False (3)编写与弹出式菜单相关联的编写

38、与弹出式菜单相关联的MouseUp(释放鼠标释放鼠标)事件过事件过程程。格式为:。格式为:对象对象 PopupMenu 菜单名菜单名,位置常数位置常数,横坐标横坐标,纵坐标纵坐标例例10.10 10.10 在例在例10.910.9的基础上,把的基础上,把“位数位数”菜单改为快捷菜菜单改为快捷菜单单 (1)打开例打开例10.9的应用程序,选定窗体,然后在菜单编辑器中的应用程序,选定窗体,然后在菜单编辑器中将将“位数位数”菜单标题的菜单标题的“可见可见”框中的框中的“”取消取消(即不选中即不选中)(2)增加以下的增加以下的MouseUp事件过程代码:事件过程代码:Private Sub Form_

39、MouseUp(Button As Integer,_Shift As Integer,X As Single,Y As Single)If Button=2 Then 检查是否右击检查是否右击,击左键为击左键为1PopupMenu mnu10End If End Sub程序运行时,右击窗体空白处,即会弹出快捷菜单,如图程序运行时,右击窗体空白处,即会弹出快捷菜单,如图10.11所示所示弹出式菜单 10.610.6 工具栏和状态栏工具栏和状态栏 分别通过分别通过Active X控件控件ToolBar和和StatusBar来实现来实现 10.6.1 Active X控件简介控件简介 VB中使用的

40、控件有三类:中使用的控件有三类:标准控件、标准控件、ActiveX控件和可插入对象控件和可插入对象(如如Word文档、文档、Excel工作表等,可当工作表等,可当作控件使用作控件使用)Active X控件是一段可重复使用的程序代码和数控件是一段可重复使用的程序代码和数据。由据。由Active X技术创建的,可以作为技术创建的,可以作为VB工具箱的工具箱的扩充部分。扩充部分。Active X控件以单独的文件存在控件以单独的文件存在(.ocx)10.6.210.6.2 工具栏工具栏(ToolBar)(ToolBar)工具栏为用户带来比用菜单更为快速的操作工具栏为用户带来比用菜单更为快速的操作 为窗

41、体添加工具栏,应使用为窗体添加工具栏,应使用工具条工具条(ToolBar)控件控件和和图像控件列表图像控件列表(ImageList)控件控件(不是标准控件不是标准控件)创建工具栏的创建工具栏的大致步骤大致步骤:(1)添加添加ToolBar控件和控件和ImageList控件控件 (2)用用ImageList控件保存要使用的图形控件保存要使用的图形 (3)创建创建ToolBar控件,并将控件,并将ToolBar控件与控件与ImageList控件相控件相关联,创建关联,创建Button对象对象 (4)编写编写Button的的Click事件过程。事件过程。单击工具栏控件时触发单击工具栏控件时触发Cli

42、ck事件,单击工具栏上按钮时触事件,单击工具栏上按钮时触发发ButtonClick事件,并返回一个事件,并返回一个Button参数参数(表明按下哪个按表明按下哪个按钮钮)例例10.11 10.11 使用工具栏使用工具栏 在例在例10.9的基础上,增加一个工具栏,使之能快速的基础上,增加一个工具栏,使之能快速提供提供“加法加法”、“减法减法”和和“乘法乘法”运算类型运算类型 操作步骤:操作步骤:(1)打开打开例例10.9的应用的应用程序程序 (2)按照上述创建按照上述创建ImageList的方法,在窗体上的方法,在窗体上建立建立ImageList1控件控件,并从,并从Windows 98系统文件

43、夹中取出图片文件系统文件夹中取出图片文件Hlpcd.gif、Hlpbell.gif和和Hlpglobe.gif(本例采用这三个图片作为本例采用这三个图片作为按钮的图形按钮的图形),并添加到该控件中。,并添加到该控件中。(3)在窗体上在窗体上建立建立ToolBar1控件控件,使之与,使之与ImageList1相关联,相关联,然后在控件中添加然后在控件中添加“加法加法”、“减法减法”和和“乘法乘法”三个按钮,三个按钮,并分别取用并分别取用ImageList1中的三个图片。中的三个图片。(4)在原有程序代码的基础上,在原有程序代码的基础上,增加增加以下的以下的ButtonClick事件事件过程过程代

44、码代码Private Sub Toolbar1_ButtonClick(ByVal Button As _ MSComctlLib.Button)Select Case Button.Index Case 1 sel2=+Case 2 sel2=-Case 3 sel2=*End SelectEnd Sub 10.6.3 10.6.3 状态栏状态栏 状态栏状态栏(StatusBar)通常位于窗体的底部,主要通常位于窗体的底部,主要用于显示应用程序的各种状态信息。用于显示应用程序的各种状态信息。StatusBar控件控件属于属于ActiveX控件控件 StatusBar控件由若干个面板控件由若干

45、个面板(Panel)组成,每一组成,每一个面板包含文本和图片。个面板包含文本和图片。StatusBar控件最多能分成控件最多能分成16个个Panel对象对象 例例10.1210.12 使用状态栏使用状态栏 在例在例10.11的基础上,在窗体底部添加一个状态栏,用于显的基础上,在窗体底部添加一个状态栏,用于显示当前时间、键盘大小写状态及运行状态。操作步骤:示当前时间、键盘大小写状态及运行状态。操作步骤:(1)打开例打开例10.9的应用程序的应用程序 (2)在窗体上创建在窗体上创建StatusBar1控件控件 (3)右击右击StatusBar1控件,从快捷菜单中选择控件,从快捷菜单中选择“属性属性

46、”命令,系统弹出命令,系统弹出“属性页属性页”对话框对话框 (4)单击单击“窗格窗格”选项卡,屏幕显示如图选项卡,屏幕显示如图10.16所所示示 (5)设置第设置第1个窗格个窗格(索引为索引为1),“工具提示文本工具提示文本”为为“提示信息提示信息”,“样式样式”为为“0-sbrText”(即显即显示文本和位图示文本和位图),其显示内容在运行时由程序代码设,其显示内容在运行时由程序代码设置置 (6)设置第设置第2个窗格个窗格(索引为索引为2),“工具提示文本工具提示文本”为为“大小写状态大小写状态”,“样式样式”为为“1-sbrCaps”(即即显示大小写状态显示大小写状态)(7)设置第设置第3

47、个窗格个窗格(索引为索引为3),其,其“工具提示工具提示文本文本”为为“时间时间”,“样式样式”为为“5-sbrTime”(即即按系统格式显示时间按系统格式显示时间)。单击单击“确定确定”按钮。按钮。(8)要在运行中使第要在运行中使第1个窗格显示个窗格显示“正在运行中正在运行中”,可在,可在Form_Load()事件过程中加入如下代码:事件过程中加入如下代码:StatusBar1.Panels.Item(1)=正在运行中正在运行中 运行程序运行程序 窗体和大多数控件都能响应键盘和鼠标事件窗体和大多数控件都能响应键盘和鼠标事件 10.7.1 10.7.1 键盘事件键盘事件 有三种事件处理键盘操作

48、,即有三种事件处理键盘操作,即KeyPress、KeyDown和和KeyUp事件事件 1.KeyPress1.KeyPress事件事件 2.KeyDown 2.KeyDown事件:事件:用户按下键盘上某个键时触发此事件用户按下键盘上某个键时触发此事件 Private Sub Form_KeyDown(KeyCode As Integer,Shift As Integer)Private Sub Form_KeyDown(KeyCode As Integer,Shift As Integer)Print Print 按下键的代码是按下键的代码是;KeyCodeKeyCode End SubEnd

49、 Sub 参数参数KeyCodeKeyCode是一个按下键的代码(不区分大小写)是一个按下键的代码(不区分大小写)10.7 10.7 键盘与鼠标事件键盘与鼠标事件 3.KeyUp3.KeyUp事件:事件:用户按下键盘上某个键后释用户按下键盘上某个键后释放时触发此事件。事件过程的语法格式类似于放时触发此事件。事件过程的语法格式类似于KeyDownKeyDown事件事件 KeyDown和和KeyUp事件除了可以识别事件除了可以识别KeyPress事件能识别的键,还可识别键盘上的事件能识别的键,还可识别键盘上的大多数键,如功能键、编辑键、定位键和数字大多数键,如功能键、编辑键、定位键和数字小键盘上的

50、键小键盘上的键 包括:包括:ClickClick、DblClickDblClick、MouseMoveMouseMove、MouseDownMouseDown和和MouseUpMouseUp等事件等事件 1鼠标事件过程格式鼠标事件过程格式 后三种鼠标事件与后三种鼠标事件与Click、DblClick事件不同的是可以区分事件不同的是可以区分鼠标的左、右、中键与鼠标的左、右、中键与Shift、Ctrl、Alt键。键。鼠标事件过程的语法格式为:鼠标事件过程的语法格式为:Private Sub 对象名对象名_鼠标事件鼠标事件(Button As Integer,Shift As Integer,X A

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁