打印本文 打印本文 关闭窗口 关闭窗口
VB编程开发常见技巧
作者:武汉SEO闵涛  文章来源:敏韬网  点击数670  更新时间:2009/4/23 14:57:50  文章录入:mintao  责任编辑:mintao
 Visual Basic(以下简称VB)是Windows下的一个面向对象的可视 化开发环境,功能非常强大。下面笔者就自己在实际软件开发过程中 获得的一些经验和大家作以交流。
  提示钮的实现
  如果自己留心一点儿,一定注意到了Microsoft公司的一系列产品 (如Word、Excel甚至B 本身),都为其应用程序的命令按钮提供了信息 。如用户不清楚软件中所列图标按钮的功能, 可将鼠标移至该图标按 钮上,过一会儿在其下方就会显示一信息,说明它的作用,而鼠标移开 后,提示即消失。
图1
  这里我们利用mousemove这一事件来实现。先将Label1.visible 设置为False再输入以下代码。
  Private Sub Command1_MouseMove(Button As
  Integer,Shift As Integer,X As Single,
  Y As Single)
    Label1.Visible=True
  End Sub
  Private Sub Form_MouseMove(Button As Integer,Shift As In
teger,X As Single, As Single)
   Labl1.Visible=False
  End Sub
  若按钮放在Frame中,则将Form_mousemove事件改为Frame_mousem ove即可,或干脆二者都写。

  背景设置
  我们进行软件设计时,功能实现当然是第一位的,但人机界面也绝 不容忽视。有时我们希望为其加一个比较漂亮的背景,且自始至终都 在屏幕上。我们可让一窗体一直不释放,但这样效果并不好。VB提供 的MDI表单(Multiple Document Interface即多文档界面)是一个包含 多个子表单的容器,是应用程序的背景表单。我们可插入一MDI表单( 选Insert、MDI Form即可),这样就使应用程序具有了MDI功能。在MDI 窗体Picture属性中加入想要的图片,然后把其它表单的MDIChild属性 设置为True,使它们成为MDI主菜单的子表单。一个应用程序只能有一 个MDI表单,但可有多个各不相同的非MDI子表单。这一点在Word、Exc el中都有体现。如Micrs oft Excel中包含工作表和图表子菜单,作为 一些普通对话框的宿主。
  Tab键与回车键
  ①用过VB的人一定知道,用文本框Text输入时很不方便,因为VB本 身并不支持回车而自动跳到下一个控件。这一点可用Keypress事件来 解决。
  Private Sub Text1_KeyPress(KeyAscii As Integer)
  If KeyAscii=13 Then text2.SetFocus 13是return键
  End Sub
  ②另外,文本框在用户按回车键时会发出蜂鸣声,如何避免呢?输 入以下代码:
  Private Sub Text eyPress(KeyAscii As Integer)
   If KeyAscii=13 Then
   KeyAscii=0
   End If
  End Sub
  即可避免。而且用户按回车键常常有一定的目的——跳到下一个 控件,我们可让Tab键模拟回车键,只要在Keyascii=0前回上一句sendk eys"{Tab}"即可。
  快捷菜单的实现
  利用鼠标右键弹出菜单功能简单方便。如在Win95资源管理器中, 选中一文件目录或文件后按右键即弹出一菜单,可选"发送"项,很方便 拷贝至A盘;Desktop上按右键亦可方便修改桌面属性,这些都无疑极大 程度地方便了用户。我们利用VB编程时,也可实现这一功能。在菜单 编辑器中定义好菜单文件后,对鼠标右键编写对应的响应代码即可(必 须有下一级菜单)。
  Private Sub Form_MouseDown(Button As Integer,Shift As In
teger,X As Single, As Single)If Button=2 Then PopupMenu mhel
p
  End Sub
  若想原菜单不显示在屏幕上,可将其Visible设为False(如本例中 为mhelp)。图3

  滚动条
  笔者认为,VB4.0中提供的滚动条功能还不够完善,过程控制都得 用户自己去实现,如要用滚动条去控制文本框或标签,我们可将其Inde x属性改为0,利用数组控制下标来移动(如Tex( text).move X,Y),再 将其Visible作相应的改变即可。但如果开发程序较大、控制较多的 话,则需要把它们从内存中释放(即Unload),为程序顺利运行留下更多 的内存空间。此时需小心控制其下标以正确运行。
  按钮名的动态变化
  由于桌面空间有限,我们不可能同时在一屏幕上放很多控件,否则 会显得特别拥挤。但我们可从Foxpro Wizard开发的程序中得到启示 。如"追加"按钮揿下去后,即变为"存盘"或"放弃"。我们可将命令按 钮的Caption(或Text)属性变掉!如Command1的Caption开始设置为"追 加",输入以下代码:
  Private Sub Command1_Click()
   If Command1.Caption="追加" Then
   Command1.Caption="存盘"
   ……
   ElseIf Command1.Caption="存盘" Then
   Command1.Caption="追加"
  ……
  End If

  使用Windows本身提供的应用程序
  在开发的实际应用程序中,我们可能要用到诸如计算机、书写器 、画笔等Windows提供的工具。要实现这一点其实很方便。如要使用 计算器,只要输入以下代码即可:
  Private Sub Command1_Click()
   call=Shell("c:\windows\calc.exe",1) 可修改对应路径 、文件名
   End Sub
  这一点,如和上面提到的快捷菜单结合起来则

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