一组VB实用小程序
用VB实现编程离不开函数调用及Windows API函数的调用,以下是笔者收集的一些实用的小例程,它们可以直接用在你的实际编程中,也可以根据实际应用加以扩充完善。其中涉及Windows API函数调用的代码你可以从VB5.0系统的API函数查看器中复制函数定义内容,以避免出错。
1.系统型表单
系统型意味着用户完成当前表单操作之前无法进行其它操作,这对于编制系统口令保护界面尤为重要。如果你希望当前表单系统型表单,需如下定义API函数:
Declare Function SetSysModalWindow Lib "User" (ByVal hWnd As Integer) As Integer
然后调用:oldSysModal = SetSysModalWindow([Form].hWnd)
2.获取驱动器类型
代码如后:
Declare Function GetDriveType Lib “Kernel" (ByVal nDrive As Integer) As Integer
Global Const DRIVE_REMOVEABLE% = 2, DRIVE_FIXED% = 3
Global Const DRIVE_REMOTE% = 4
3.表单在对中
本子程序功能使表单定位在屏幕中央,在表单中任何需要表单对中的地方只需加入一行代码:
“centerwindow.me”即可成功调用。
Public Sub CenterWindow(f As Form)
f.Top = (Screen.Height * .5) - (f.Height * .5)
f.Left = (Screen.Width * .5) - (f.Width * .5)
End Sub
4. 定义变量
许多的程序员习惯于如下定义变量:
Dim iNum, iNextNum, iLastNum as Integer
实际上只有最后一个变量被设为了整型,前两个变量则是系统的缺省的Variant 数据类型,而Variant 数据类型可用来替换任何数据类型,显然对于精练的程序设计是不利的。 正确的方法如下:
Dim iNum as Integer
Dim iNextNum as Integer
Dim iLastNum as Integer
5. 使文本高亮
本子程序使被触发的诸如文本,标签等控件的文本被选中
Public Sub SetSelected()
Screen.ActiveControl.SelStart = 0
Screen.ActiveControl.SelLength = Len(Screen.ActiveControl.Text)
End Sub
6. 关闭其它程序
下面的代码可关闭内存中的其它程序
title = "MyAPP" '定义你需关闭的程序窗口的标题
ihWnd = findWindow(0&, Title)
ihTask = GetWindowTask (ihWnd)
iRet = PostAppMessage(ihTask, WM_QUIT, 0, 0&)
7. 文件存在否?
本函数返回查找的文件是否存在。
Function FileExist(Filename as string) as Boolean
FileExist = Iif(Dir(Filename) <> "", True, False)
End Function
8. 主程序唯一
用下面提供的代码作你的主程序可防止应用程序的多重执行,你应当将它放在确信需要它的代码模块内。
Public Sub Main()
If App.PrevInstance Then
BringWindowToTop frmMain.hwnd
Else
Load frmMain
End If
End Sub