打印本文 打印本文 关闭窗口 关闭窗口
创建自定义的光标
作者:武汉SEO闵涛  文章来源:敏韬网  点击数629  更新时间:2009/4/23 14:57:51  文章录入:mintao  责任编辑:mintao
  在设计应用程序时,Visual Basic允许程序员将许多控件的Mouse Pointer属性设计成12个预先定义好的鼠标光标之一。典型情况是程 序员希望改变一个控件的MousePointer 属性,以告诉程序的用户正在 或已经进行某种类型的行为,例如,沙漏光标表示一个消耗时间的过程 。另外,可以改变光标来通知用户他已经将鼠标的指针指向了一个特 殊的控件,如一个文件列表框。要做到这些,程序员只需要简单地在Vi sual Basic程序中在适当时刻改变该控件的MousePointer属性即可。
  然而,有些程序员或许会希望显示一个12个预定义形状中的光标 之外的光标。本文说明如何创建不同的鼠标指针(光标),包括为一个 没有MousePointer属性的控件创建光标。
  改变光标(鼠标指针)
  要在Visual Basic应用程序中将光标(鼠标指针)改变成不同的形 状,需添加代码来改变希望监视的控件的MouseMove和DragOver事件。
  MouseMove事件所包含的代码用于触发该控件的Drag方法。当鼠 标在被选中的控件上移动时,轮流显示新的鼠标指针。当鼠标指针离 开该控件时,DragOver事件被触发。在Vi sual Basic程序中,可以重 新复位此Drag属性,以便以前的鼠标指针能够再次显示出来。
  样例程序
  下面的程序实现当鼠标指针移动到一个文件列表框控件上时,将 其改变成不同的形状。
  1.在Visual Basic中开始一个新的工程,采用缺省的方法建立For m1。
  2.在Form1上添加一个文件列表框控件,采用缺省的方法建立File1。
  3.将File1控件的DragIcon属性设置为所选择的.ICO文件。
  4.将如下代码添加到File1的MouseMove事件中:
  Private Sub File1_MouseMove(Button As Integer, Shift As Integer, X As Si ngle, Y As Single)
  File1.Drag 1
   icon on
  End Sub
  5.将如下代码添加到Form1的DragOver事件中:
  Private Sub Form_DragOver(Source As Control, X As Single
, Y As Single, State As Integer)
  File1.Drag 0
   icon off
  End Sub
  按下F5功能键执行此程序。得到的运行结果是:将鼠标指针移动 到该文件列表框控件上时,程序将把所选中的.ICO文件作为缺省的鼠 标光标;将鼠标指针离开该控件时,光标则会自动恢复为缺省的形状。

打印本文 打印本文 关闭窗口 关闭窗口