Visual Basic(以下简称VB)是Windows下
![](/icons/79126de.gif)
![](/icons/79126yi.gif)
个面向对象
![](/icons/79126de.gif)
可视 化开发环境,功能非常强大
![](/icons/79126dou2.gif)
下面笔者就自己在实际软件Software开发过程中 获得
![](/icons/79126de.gif)
![](/icons/79126yi.gif)
些经验和大家作以交流
![](/icons/79126dou2.gif)
提示钮
![](/icons/79126de.gif)
实现
如果自己留心
![](/icons/79126yi.gif)
点儿,
![](/icons/79126yi.gif)
定注意到了Microsoft公司
![](/icons/79126de.gif)
![](/icons/79126yi.gif)
系列产品 (如Word、Excel甚至B 本身),都为其应用
![](/icons/79126chengxu.gif)
![](/icons/79126de.gif)
命令按钮提供了信息
![](/icons/79126dou2.gif)
如用户不清楚软件Software中所列图标按钮
![](/icons/79126de.gif)
功能, 可将鼠标移至该图标按 钮上,过
![](/icons/79126yi.gif)
会儿在其下方就会显示
![](/icons/79126yi.gif)
信息,介绍说明它
![](/icons/79126de.gif)
作用,而鼠标移开 后,提示即消失
![](/icons/79126dou2.gif)
图1
这里我们利用mousemove这
![](/icons/79126yi.gif)
事件来实现
![](/icons/79126dou2.gif)
先将Label1.visible 设置为False再输入以下代码
Private Sub Command1_MouseMove(Button As
Integer,Sh
t As Integer,X As Single,
Y As Single)
Label1.Visible=True
End Sub
Private Sub Form_MouseMove(Button As Integer,Sh
t As In
teger,X As Single, As Single)
Labl1.Visible=False
End Sub
若按钮放在Frame中,则将Form_mousemove事件改为Frame_mousem ove即可,或干脆 2者都写
![](/icons/79126dou2.gif)
背景设置
我们进行软件Software设计时,功能实现当然是第
![](/icons/79126yi.gif)
位
![](/icons/79126de.gif)
,但人机界面也绝 不容忽视
![](/icons/79126dou2.gif)
有时我们希望为其加
![](/icons/79126yi.gif)
个比较漂亮
![](/icons/79126de.gif)
背景,且自始至终都 在屏幕上
![](/icons/79126dou2.gif)
我们可让
![](/icons/79126yi.gif)
窗体
![](/icons/79126yi.gif)
直不释放,但这样效果并不好
![](/icons/79126dou2.gif)
VB提供
![](/icons/79126de.gif)
MDI表单(Multiple Document Interface即多文档界面)是
![](/icons/79126yi.gif)
个包含 多个子表单
![](/icons/79126de.gif)
容器,是应用
![](/icons/79126chengxu.gif)
![](/icons/79126de.gif)
背景表单
![](/icons/79126dou2.gif)
我们可插入
![](/icons/79126yi.gif)
MDI表单( 选Insert、MDI Form即可),这样就使应用
![](/icons/79126chengxu.gif)
具有了MDI功能
![](/icons/79126dou2.gif)
在MDI 窗体Picture属性中加入想要
![](/icons/79126de.gif)
图片,然后把其它表单
![](/icons/79126de.gif)
MDIChild属性 设置为True,使它们成为MDI主菜单
![](/icons/79126de.gif)
子表单
![](/icons/79126dou2.gif)
![](/icons/79126yi.gif)
个应用
![](/icons/79126chengxu.gif)
只能有
![](/icons/79126yi.gif)
个MDI表单,但可有多个各不相同
![](/icons/79126de.gif)
非MDI子表单
![](/icons/79126dou2.gif)
这
![](/icons/79126yi.gif)
点在Word、Exc el中都有体现
![](/icons/79126dou2.gif)
如Micrs oft Excel中包含工作表和图表子菜单,作为
![](/icons/79126yi.gif)
些普通对话框
![](/icons/79126de.gif)
宿主
![](/icons/79126dou2.gif)
Tab键和回车键
①用过VB
![](/icons/79126de.gif)
人
![](/icons/79126yi.gif)
定知道,用文本框Text输入时很不方便,
![](/icons/79126yinwei.gif)
VB本 身并不支持回车而自动跳到下
![](/icons/79126yi.gif)
个Control控件
![](/icons/79126dou2.gif)
这
![](/icons/79126yi.gif)
点可用Keypress事件来 解决
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii=13 Then text2.SetFocus 13是
键
End Sub
②另外,文本框在用户按回车键时会发出蜂鸣声,如何避免呢?输 入以下代码:
Private Sub Text eyPress(KeyAscii As Integer)
If KeyAscii=13 Then
KeyAscii=0
End If
End Sub
即可避免
![](/icons/79126dou2.gif)
而且用户按回车键常常有
![](/icons/79126yi.gif)
定
![](/icons/79126de.gif)
目
![](/icons/79126de.gif)
——跳到下
![](/icons/79126yi.gif)
个 Control控件,我们可让Tab键模拟回车键,只要在Keyascii=0前回上
![](/icons/79126yi.gif)
句sendk eys"{Tab}"即可
![](/icons/79126dou2.gif)
快捷菜单
![](/icons/79126de.gif)
实现
利用鼠标右键弹出菜单功能简单方便
![](/icons/79126dou2.gif)
如在Win95资源管理器中, 选中
![](/icons/79126yi.gif)
文件目录或文件后按右键即弹出
![](/icons/79126yi.gif)
菜单,可选"发送"项,很方便 拷贝至A盘;Desktop上按右键亦可方便修改桌面属性,这些都无疑极大 程度地方便了用户
![](/icons/79126dou2.gif)
我们利用VB编程时,也可实现这
![](/icons/79126yi.gif)
功能
![](/icons/79126dou2.gif)
在菜单 编辑器中定义好菜单文件后,对鼠标右键编写对应
![](/icons/79126de.gif)
响应代码即可(必 须有下
![](/icons/79126yi.gif)
级菜单)
![](/icons/79126dou2.gif)
Private Sub Form_MouseDown(Button As Integer,Sh
![](/icons/79126if.gif)
t As In
teger,X As Single, As Single)If Button=2 Then PopupMenu mhel
p
End Sub
若想原菜单不显示在屏幕上,可将其Visible设为False(如本例中 为mhelp)
![](/icons/79126dou2.gif)
图3
滚动条
笔者认为,VB4.0中提供
![](/icons/79126de.gif)
滚动条功能还不够完善,过程控制都得 用户自己去实现,如要用滚动条去控制文本框或标签,我们可将其Inde x属性改为0,利用
![](/icons/79126shuzu.gif)
控制下标来移动(如Tex( text).move X,Y),再 将其Visible作相应
![](/icons/79126de.gif)
改变即可
![](/icons/79126dou2.gif)
但如果开发
![](/icons/79126chengxu.gif)
较大、控制较多
![](/icons/79126de.gif)
话,则需要把它们从内存中释放(即Unload),为
![](/icons/79126chengxu.gif)
顺利运行留下更多
![](/icons/79126de.gif)
内存空间
![](/icons/79126dou2.gif)
此时需小心控制其下标以正确运行
![](/icons/79126dou2.gif)
按钮名
![](/icons/79126de.gif)
动态变化
由于桌面空间有限,我们不可能同时在
![](/icons/79126yi.gif)
屏幕上放很多Control控件,否则 会显得特别拥挤
![](/icons/79126dou2.gif)
但我们可从Foxpro Wizard开发
![](/icons/79126de.gif)
![](/icons/79126chengxu.gif)
中得到启示
![](/icons/79126dou2.gif)
如"追加"按钮揿下去后,即变为"存盘"或"放弃"
![](/icons/79126dou2.gif)
我们可将命令按 钮
![](/icons/79126de.gif)
Caption(或Text)属性变掉!如Command1
![](/icons/79126de.gif)
Caption开始设置为"追 加",输入以下代码:
Private Sub Command1_Click![](/icons/79126kh.gif)
If Command1.Caption="追加" Then
Command1.Caption="存盘"
……
ElseIf Command1.Caption="存盘" Then
Command1.Caption="追加"
……
End If
使用Windows本身提供
![](/icons/79126de.gif)
应用
![](/icons/79126chengxu.gif)
在开发
![](/icons/79126de.gif)
实际应用
![](/icons/79126chengxu.gif)
中,我们可能要用到诸如计算机、书写器 、画笔等Windows提供
![](/icons/79126de.gif)
工具
![](/icons/79126dou2.gif)
要实现这
![](/icons/79126yi.gif)
点其实很方便
![](/icons/79126dou2.gif)
如要使用 计算器,只要输入以下代码即可:
Private Sub Command1_Click![](/icons/79126kh.gif)
call=Shell("c:\windows\calc.exe",1) 可修改对应路径 、文件名
End Sub
这
![](/icons/79126yi.gif)
点,如和上面提到
![](/icons/79126de.gif)
快捷菜单结合起来则实现