分享

Command的常用事件

 hdzgx 2017-10-23
  现在我们通过一个有趣的小程序“自由的小青蛙”来看看其中的小青蛙是怎样通过不同的事件来完成各种动作的。(见图一)


  左右跳--按“Z”键,
       对青蛙点鼠标左右键
  上下跳--按“X”键,
       对青蛙点鼠标左右键
  落 水--双击莲花
  还 原--对莲花点鼠标右键
  蛙 鸣--按“C”键
图一
(图一)
  窗体设计界面中,我们可以看出这个程序界面是由一个包含图形的窗体,一个Command控件,一些Label控件,还有几个PictureBox 控件所组成。关于PictureBox,将在后一节作详细介绍,现在我们只是通过它来认识一下事件。
  移动鼠标,触发了lblmj的MouseMove事件。
  按“Z”键,触发了窗体的 KeyPress事件。
  单击左键和右键,分别触发了两个PictureBox控件的MouseDown事件。
  按“C”键,又触发了窗体KeyPress事件。
  双击左键,触发了lbltb的DblClick事件。
  单击左键,触发了Lbltb的MouseDown事件。

  讲到现在,对于属性、方法、事件这三个概念,你弄懂了吗?
  再举个例子吧:如果我按一下CommandButton按钮,要让一个蓝色的Label控件移动,那么,
  蓝色是Label控件的属性;
  而移动则是 Label控件的方法,
  至于什么时候移动,则要放进Command1_Click这个事件中让它发生。(见图二)
图二
(图二)
  这三个基础性概念对今后学习VB重要。当你学到一定的程度,尝试自己制作ACtiveX控件时,如果概念不清的话,将“方法”弄成“事件”,“事件”混成“属性”,张冠李戴,会吃足苦头!
  搞清楚了属性、方法、事件这三个概念,以后理解控件就更能从全方位去考虑,而不光是只从属性角度来看控件了。

  现在来看一下用户的常用操作所产生的事件。

  鼠标事件
  Cilck:用户单击鼠标键时发生
  DbLClick:用户双击鼠标键时发生
  MouseDown:用户释放鼠标键时发生
  MouseMove:移动鼠标时发生

  键盘事件
  KeyDown:在键按下时触发。(可获得一个KeyCode值)
  KeyUp:在键弹起时触发。(可获得一个KeyCode值)
  KeyPress:在键盘按下再弹起时发生。(它可获得KeyAscii值)

  慢着,既然有了KeyDown和KeyUp,为什么还要KeyPress事件,我将键盘按下去后,到底是触发了KeyPress事件,还是KeyDown或KeyUp事件? 答案是,当我们按了一下键盘后,这三种事件都触发。
  一般而言,大多数程序并不关心KeyDown事件来确定按下的键,KeyPress事件在触发后,能够获得一个KeyAscii值。它指键盘上的某个键与计算机ASCII码对应的值,如键“1”,KeyAscii为49;“A”,KeyAscii为65;“Enter”,KeyAscii为13。 当我们在KeyPress事件中将KeyAscii的值改为0后,就等于禁止键入。
  来看一下这个文本框,(见图三)由点到面在此控件的KeyPress事件中有这样一段代码,所以用户无论按了任何键,都不能对其输入文字。(见图四)
图三
(图四)
图四
(图四)

  然而并不是所有键盘上的键都有其KeyAscii值,有时,我们程序要判断用户是否按了功能键,可要区别数字小键盘和常规数字键时,那么KeyAscii就无能为力了。此时可以考虑KEyDown和KeyUp事件,当用户击键后,它们能获得一个唯一的KeyCode值,从而判断用户到底按了键盘上的哪个键。可以说,键盘上大多数键(Tab、PrintScreen键除外),都有唯一的KeyCode序列号。

  总而言之,我们编程序可以根据需要来确定所选用的事件,如果是针对文本操作,一般采用KeyPress事件较好,因为它能获得一个与ASCII码相通的KeyAscii值。 从这一节课中,我们了解到了Command_Button的一些常用知识。CommandButton俗称命令按钮,很多程序的代码,都是编写在CommandButton控件的Click事件中的。

  在这一节中,我们还接触了事件这个概念。VB属于事件驱动程序,它的程序代码,大多是写进一个个事件过程中的,所以,我们除了要了解用户的常用鼠标事件和键盘事件外,还必须灵活掌握代码设计器中的事件选择框,它能为我们编程带来方便。 如果深入搞清了KeyAscii与KeyCode的区别,以及KeyPress与KeyDown和KeyUp的区别的话,可以使我们的编程水平再上一个档次。 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多