第4章 常用内部控件和鼠标键盘事件
键盘与鼠标事件过程.精选PPT

Print Chr(KeyAscii);
End If
演示1
End Sub
常用键盘码与ASCII码的对应关系
按键
键码常数
ASCII码
BackSpace
vbKeyBack
8
Enter
vbKeyReturn
13
Space
vbKeySpace
33
Tab
vbKeyTab
9
Esc
vbKeyEscape
27
A~Z
解析:KeyPress事件带有一个参数,这个参数有两种形式。 第一种形式是Index As Integer,只用于控件数组;第二种 形式是KeyAscii As Integer,用于单个控件。参数KeyAscii 是一个预定义的变量,执行KeyPress事件过程时,KeyAscii 是所按键的ASCII码,并且该参数不能省略。
控件名.SetFocus
实现控件焦点的两种方法
(2)利用Tab控制键
VB所有可被设置焦点的控件均具有一个TabIndex属 性。默认情况下,在窗体上创建的第一个控件的 TabIndex的值为0,第二个控件的TabIndex的值为1,以 此类推。可按预先设计好的顺序,改变控件的TabIndex 的值,这样就可以在程序运行期间,通过Tab键使焦点 按TabIndex的值从小到大的顺序进行切换。
如果不希望使某些控件获得焦点,就可以把该控件 的TabStop属性值设置为False。
如果控件不可视(Visible=False)或不可用 (Enabled=False),也不可能获得焦点了。
2. KeyPress事件的格式和应用
以Text1控件为例:
(1)用于单个控件 Private sub Text1_KeyPress(KeyAscii As Integer)
计算机二级VB考点分析之键盘与鼠标事件过程

计算机二级VB考点分析之键盘与鼠标事件过程8.1 KeyPress事件考点1 KeyPress事件在窗体上画一个控件(指可以发生KeyPress事件的控件),并双击该控件,进入程序代码窗口后,从―过程‖框中选取KeyPress,即可定义KeyPress事件过程。
一般格式为:Private Sub Textl KeyPress(KeyAscii As Integer)End SubKeyPress事件带有一个参数,这个参数有两种形式,第1种形式是Index As Integer,只用于控件数组;第2种形式是KeyAscii As Integer,用于单个控件。
8.2 KeyDown和KeyUp事件考点2 KeyDown和KeyUp事件KeyDown和KeyUp事件的参数也有两种形式,其中Index As Integer只用于控件数组,而KeyCode As Integer,Shift As Integer用于单个控件。
KeyDown和KeyUp事件都有两个参数,即KeyCode和Shift。
(1)KeyCode是按键的实际ASCII码。
该码以―键‖为准,而不是以―字符‖为准(2)Shift转换键。
它指的是3个转换键的状态,包括Shift,Ctrl和Alt键,这3个键分别以二进制形式表示,每个键有3位,即Shift键为001,Ctrl键为010,Alt键为100。
10.3 鼠标事件考点3 鼠标事件为了实现鼠标操作,Visual Basic提供了3个过程模板:1按下鼠标键事件过程Private Sub Form MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)End Sub2松开跳标键事件过程Private Sub Form MouseUp(Button As Integer,Shift As Integer,X As Single,Y As Single) End Sub3移动鼠标光标事件过程Private Sub Form MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) End Sub上述事件过程使用于窗体和大多数控件,包括复选框、命令按钮、单选按钮、框架、文本框、目录框、文件框、图像框、图片框、标签、列表框等。
VB常用控件的事件详解

当窗体变为活动窗体时发生此事件,此事件比Load事件发生得晚,事件处理过程原形
Private Sub Form_Activate()
End Sub
此事件常用于激活窗体后对窗体进行初始化,比Load事件功能强。
Click
(单击)
当用户单击窗体时发生此事件,事件处理过程原形
Private Sub Form_Click()
Shift 转换键,意义如下:
0 没有转换键按下
1 Shift键按下
2 Ctrl键按下
3 Alt键按下
当多个转换键同时按下时,应把几个键对应的数值相加
KeyPress
(敲击键)
当窗体上没有能获得焦点的控件(如文本框控件)时,用户敲击键盘上某个键时发生此事件,事件处理过程原形
Private Sub Form_KeyPress(KeyAscii As Integer)
End Sub
形参的意义:
KeyAscii 按键Ascii码
若改变KeyAscii参数,相当于按下了不同的键,若置此参数为0,则取消按键。
KeyUp
(释放键)
当窗体上没有能获得焦点的控件(如文本框控件)时,用户按下键盘上某个键后释放时发生此事件,事件处理过程原形
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
End Sub
KeyDown
(按下键)
当窗体上没有能获得焦点的控件(如文本框控件)时,用户按下键盘上某个键时发生此事件,事件处理过程原形
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
控件的常用事件

目录1. 焦点事件(onfocus得到焦点事件、onblur失去焦点事件) (1)2.onchange事件(以select为例) (1)3.鼠标事件(onmouseover、onmouseout) (2)4.键盘事件(keydown按下、keyup释放、keypress按下并释放)text只能数数字限制 (2)1. 焦点事件(onfocus得到焦点事件、onblur失去焦点事件)Js代码:<script type="text/javascript">function upperCase(){var x=document.getElementById("fname").value;document.getElementById("fname1").value=x.toUpperCase();}</script>HTML代码:<body>输入您的姓名:<input type="text" id="fname" onblur="upperCase()"onfocus="javascript:if(this.value==''){ alert('输入姓名');}" /><input type="text" id="fname1"/></body>2.onchange事件(以select为例)当xxx改变时触发的事件Js:<script>function bao(s){var x=document.getElementById("sel").value;//获取select的选中的值document.getElementById("fname1").value=x.toUpperCase(); 将选中的select的value值赋给fmane1}</script>HTML:<body><select name="sel" id="sel" onchange="bao();"><option value="">请选择</option><option value="1">Item 1</option><option value="2">Item 2</option><option value="3">Item 3</option></select><input type="text" id="fname1" /></body>3.鼠标事件(onmouseover、onmouseout)<input name="textfield3" type="text" size="30"onmouseover="this.style.color='#000000';"onmouseout="if (this.value == '请输入需要查询的信息'){this.style.color = '#ACACAC'}" onblur="if (this.value == '') { this.value = '请输入需要查询的信息'; this.style.color = '#ACACAC' } else { this.style.color = '#000000'; }"onclick="if (this.value == '请输入需要查询的信息') { this.value = ''; this.style.color = '#000000'; }" value="请输入需要查询的信息" />4.键盘事件(keydown按下、keyup释放、keypress按下并释放)text只能数数字限制Js:<script language="javascript">function keyPress() {var keyCode = event.keyCode;event.returnValue = (keyCode >= 48 && keyCode <= 57)}function clearNoNum(obj){obj.value = obj.value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符obj.value = obj.value.replace(/^\./g,""); //验证第一个字符是数字而不是.obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的.obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");}</script>HTML:<body>js只能输入数字:<INPUT TYPE="text" NAME="pName" onkeypress="keyPress()"> <br /> js数字和.<input name="input1" onkeyup="clearNoNum(this)"> <br />onkeyup(按键)、onafterpaste(复制)只能输入数字:<input type="text"onafterpaste="this.value=this.value.replace(/\D/g,'')"onkeydown="this.value=this.value.replace(/\D/g,'')"value="" name="search_card" class="search_card"></body>。
常用控件的常用属性、方法和事件2011ok

一、窗体(属性)这连个属性用来显示窗体右上角的最大、最小化按钮。
如果希望显示最大或最小按钮,则应该将两个属性这两项设置不起作用。
因此,即使把maxbutton最小化按钮也不会消失。
如果borderstyle属性被设置为0——none属性定义的名称是在程序代码中使用的对象名,与对象的标题(caption)是只读属性,在运动时,对象的名称不能改变。
一、窗体(事件):事件是作用于对象上的一种动作或行为,也可以理解为是对象能够识别(也称响应)常用标准控件大多数控件都具有的属性:Borderstyle enable Fontbold fontitalic fontname fontsize fontunderlineHeight left name top visible width,此外不同的控件还具相应的属性文本控件与文本有关的控件有两个,即标签和文本框,在标签中只能显示文本,不能进行编辑,而在文本框中即可以显示文本,有可输入文本。
二、标签1、标签主要用来显示文本信息,所显示的内容只能用caption属性来设置或修改,不能直接编辑,有时候,标签常用来标注本身不具有caption属性的控件,例如可以使用标签为文本框、列表框组合框等控件附加描述信息。
标签一般不响应事件三、文本框1、文本框属性文本框支持click和dblclick等鼠标事件,同时支持change、gotfocus、lostfocus等事件。
1)Change当用户向文本框中输入新信息时,或当程序吧text属性设置为新值从而改变文本框的text属性时,将触发chang事件。
2)Gotfocus当文本框具有输入焦点(即处于活动状态)时,从键盘输入的每个字符都将在该文本框中显示出来3)lostfocus当按下tab键使光标离开当前文本框或者用鼠标选择窗体中的的其他对象时触发该事件,用change事件过程和lostfocus事件过程都可以检查文本框的text属性值,但后者更有效。
第4章-常用内部控件

2——下拉式列表框:其功能与下拉式组合框类似,只是不能 输入列表框中没有的选项。
4.4列表框和组合框
2. Selected 属性 该属性只能在程序中设置或引用。Selected属
性是一个逻辑数组,其元素对应列表框中相应的 项,表示对应的项在程序运行期间是否被选中。
4.4列表框和组合框
三、列表框和组合框的方法
列表框和组合框中的选项可以在设计状态通过 List属性设置,也可以在程序中用AddItem方法 来添加,用RemoveItem或Clear方法删除。
是一个字符型数组,存放列表框或组合框的选 项。List数组的下标是从0开始的,即第一个项目 的下标是0。既可以在设计状态设置,也可以在 程序中设置或引用。
4.4列表框和组合框
2. ListIndex 属性 只能在程序中设置或引用。其值表示程序运行时 被选定的选项的序号;如果未选中任何选项,则 ListIndex为-1。
第4章 常用内部控件
4.1 控件的分类 4.2 单选按钮和复选框 4.3 框架 4.4 列表框和组合框 4.5 滚动条 4.6 定时器 4.7 鼠标和键盘事件
本章内容概要
目前在VB中可以使用的控件很多,大致 分为三类:标准控件、ActiveX控件和 可插入对象。
一、标准控件 标准控件又称内部控件,标准控件
事件:框架可以响应的事件Click、DblClick。
一般不需要有关框架的事件过程。
例4.3
4.4 列表框和组合框
键盘和鼠标事件

例如:直接按光标键时移动图片的位置,按 下Shift键再按光标键时放缩图片,按 Shift+Ctrl键时复位图片的位置及大小。 将窗体的KeyPreview属性设置为True Image1的Strech属性设置为True.
Private Sub Form_Load() Label1.Caption = "直接按光标键移动图片,按下 Shift键再按光标键放缩图片,按Shift+Ctrl键复 位图片。" End Sub Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If Shift = 3 Then Image1.Move 2000, 1000, 1000, 1000 '复位图 片 End If
KeyPress事件中得到的是按键对应的字符 的ASCII码(KeyAscii) KeyUp,KeyDown事件中得到的是按键对应 的键号(KeyCode),键盘104个键都对应着 唯一的键号。
KeyPress事件 对象的KeyPress事件过程的一般格式为:
Privat Sub Object_KeyPress(KeyAscii As Integer)
Function ShiftStatus(Shift As Integer) As String Select Case Shift Case 0: s = "" Case 1: s = “Shift+" Case 2: s = "Ctrl+" Case 3: s = "Shift+Ctrl+" Case 4: s = "Alt+" Case 5: s = "Shift+Alt+" Case 6: s = "Ctrl+Alt+" Case 7: s = "Shift+Ctrl+Alt+" End Select ShiftStatus = s End Function
鼠标和键盘事件

第14页
5、标签数组的使用 Label[] lblArray; lblArray; lblArray = new Label[] { label1, label4, label5, label4 label5 label6 label7 label8 label6, label7, label8 }; 将所有label1的地方外层加循环 的地方外层加循环, label1改为 将所有label1的地方外层加循环,将label1改为 lblArray[i]
第9页
【打字游戏】 打字游戏】
要使窗体在可以获得焦点的控件之前截获键盘事件, 要使窗体在可以获得焦点的控件之前截获键盘事件, 应该将窗体的KeyPreview属性设为 属性设为true。 应该将窗体的 属性设为 。 (1)窗体的KeyPreview属性设为 )窗体的 属性设为true 属性设为 (2)int score //表示得分 ) 表示得分
第11页
2、标签上文字的获取 假设范围为英文字母A 假设范围为英文字母A—Z。 Random aa=new Random(); label1.Text= ( (char) aa.Next(65,91)).ToString();
第12页
3、键盘事件 private void Form1_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == char.Parse(label1.Text) || e.KeyChar == char.Parse(label1.Text.ToLower())) { score += 10; label3.Text = score.ToString(); label1.Text = ((char)aa.Next(65, 91)).ToString(); label1.Top = 20问题 1、鼠标的位置 、 2、哪个鼠标按键按动 、
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
框架的事件
框架可以响应Click和DblClick事件。但是,
一般不需要编写有关框架的事件过程。
13
单选按钮+复选框练习
14
Dim xb$ Private Sub Option1_Click() Private Sub Command1_Click() xb = Option1.Caption Dim xm$, nj$, ah$ End Sub xm = Text1 If Option3.Value = True Then Private Sub Option2_Click() nj = Option3.Caption xb = Option2.Caption ElseIf Option4.Value = True Then End Sub nj = Option4.Caption ElseIf Option5.Value = True Then nj = Option5.Caption ElseIf Option6.Value = True Then nj = Option6.Caption End If If Check1.Value = 1 Then ah = ah + Check1.Caption + " " If Check2.Value = 1 Then ah = ah + Check2.Caption + " " If Check3.Value = 1 Then ah = ah + Check3.Caption + " " If Check4.Value = 1 Then ah = ah + Check4.Caption + " " Label2.Caption = "姓名:" & xm & ",性别为: " _ & xb & ",年级为:" & nj & vbCrLf & "爱好有:" & ah End Sub
15
4.3 列表框和组合框
4.3.1 主要属性 4.3.2 列表框特有的属性 4.3.3 方法 4.3.4 事件
16
列表框和组合框
列表框(ListBox)用于在多个项目中做出选择
的操作。列表框最主要的特点是只能从其中 选择,可多选,但不能直接编辑修改其中的 内容。组合框(ComboBox)是组合列表框和文 本框的特性而成的控件。
第4章 常用内部控件和鼠标键盘事件
本章关键词 控件 属性 方法 事件 教学目标 熟练掌握常用控件的属性、方法、事件和使用; 熟悉鼠标和键盘事件。 重点 单选按钮和复选框及框架的使用; 列表框和组合框的使用; 滚动条、时钟和图形控件的使用; 鼠标和键盘事件。 难点 列表框和组合框的使用; 时钟的使用。 鼠标和键盘事件
2
第4章 常用内部控件和鼠标键盘事件
4.1 4.2 4.3
4.4
4.5 4.6 4.7 4.8
单选按钮和复选框 框架 列表框和组合框 滚动条 时钟 图片框和图像框 直线和形状 鼠标与键盘事件过程
3
4.1பைடு நூலகம்单选按钮和复选框
4.1.1
主要属性
4.1.2
SetFocus方法 Click事件
5
主要属性
Caption:设置单选按钮或复选框的文本注释
内容,即单选按钮或复选框边上的文本标题。 Value:返回或设置按钮的选中状态。
· 单选按钮:True:单选按钮被选定。False:单
选按钮未被选定,默认设置。 · 复选框:0(或Unchecked):复选框未被选定, 默认设置。1(或Checked):复选框被选定。2(或 Grayed):复选框变成灰色,禁止用户选择,但 在运行时仍可选择。
9
4.2 框架
4.2.1 主要属性
4.2.2 事件
10
框架
框架(Frame)是一个容器控件,用于将屏幕上
的对象分组。在窗体上创建框架及其内部控 件时,必须先建立框架,然后在其中建立各 种控件。
11
框架的主要属性
Caption:由Caption属性值设定框架左上方
的标题名称。 Enabled:该属性设置为False时,程序运行 时该框架在窗体中的标题正文为灰色,表示 框架内的所有对象均被屏蔽,不允许用户对 其进行操作。默认为True。 Visible:若框架的Visible属性为False,则在 程序执行期间,框架及其内部所有控件全部 被隐藏起来,用户看不见。默认为True。
4.1.3
4
单选按钮和复选框
单选按钮(OptionButton)的左边有一个○。单选按钮 必须成组出现,彼此相互排斥,用户在一组单选按 钮中必须并且最多只能选择一项。当某一项被选定 后,其对应的圆圈中出现一个黑点⊙。单选按钮主 要用于在多种功能中由用户选择一种功能的情况。 复选框(CheckBox)的左边有一个□,复选框也称检 查框。复选框列出可供用户选择的选项彼此独立工 作,用户根据需要选定其中的一项或多项。当某一 项被选中后,其左边的小方框就变成,再次单击, 则又变成□。
单选按钮:触发一次Click事件,并将Value属
性设置为True。
复选框:使复选框得到焦点,不触发Click事
件,也不改变Value属性值。
8
Click事件
单选按钮:单击单选按钮时,若它原来没被
选中,则选中该项,Value属性变成True,并 执行单击事件过程代码。若它原来已选中, 则不再执行单击事件过程代码。 复选框:单击复选框时,无论其原先是否被 选中,都将触发一次Click事件。如果单击未 选中的复选框时,Value属性变为1。如果单 击已选中的复选框时,Value属性变为0。如 果单击变灰的复选框时,Value属性变为0。
6
主要属性
Alignment:设置标题和按钮显示位置。0:
控件按钮在左边,标题显示在右边,默认设 置。1:控件按钮在右边,标题显示在左边。 Style:指定单选按钮或复选框的显示方式, 用于改善视觉效果。0(或Standard):标准方 式。1(或Graphical):图形方式。
7
SetFocus方法