以前自己写的一套VB编程基础系列教程,适合VB初学者。

本程序主要是用到了ShellExecute函数,这个函数在VB编程里是非常重要的,所以首先来了解一个这个API函数。

【函数说明】
使用ShellExecute函数,调用默认的外部浏览器和电子邮件工具来浏览网页和发送电子邮件。

【VB声明】
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

【说明】
查找与指定文件关联在一起的程序的文件名。

【返回值】
Long,非零表示成功,零表示失败。会设置GetLastError。

【参数表】
hwnd ----------- Long,指定一个窗口的句柄,有时候,windows程序有必要在创建自己的主窗口前显示一个消息框
lpOperation ---- String,指定字串“open”来打开lpFlie文档,或指定“Print”来打印它
lpFile --------- String,想用关联程序打印或打开一个程序名或文件名
lpParameters --- String,如lpszFlie是可执行文件,则这个字串包含传递给执行程序的参数
lpDirectory ---- String,想使用的完整路径
nShowCmd ------- Long,定义了如何显示启动程序的常数值。

源程序:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Private Sub Label1_Click()
Call ShellExecute(Form1.hwnd, "open", "http://www.hack0573.com", vbNullString, vbNullString, &H0)
End Sub

Private Sub Label2_Click()
Call ShellExecute(Form1.hwnd, "Open", "mailto:hqw198726@126.com", "", App.Path, 1)
End Sub

没错,就是这么简单。解释一下上面的代码:
比如我们要使用IE打开标签中的超链接,则我们可以在标签的Click()过程中加入如下一句代码:
Call ShellExecute(Form1.hwnd, "open", "http://www.hack0573.com", vbNullString, vbNullString, &H0)

其中http://www.hack0573.com是要打开的超链接,"open"是采用打开的方法,&H0表示用默认程序IE打开时,IE窗口可见。

又比如我们要打开默认的电子邮件工具发送邮件,则使用下面语句:
Call ShellExecute(Form1.hwnd, "Open", "mailto:hqw198726@126.com", "", App.Path, 1)

最后我们设置标签Label的字体为下划线,MouseIcon选择一个小手状的图标,把MousePointer设为99-Custom,这样就能模拟超链接的效果了。小手图标搜索自己的系统*.cur文件。