用VB制作带链接的对话框

软件世界

我们经常看见有一些程序的“关于…(About…)”对话框中带有作者或者软件公司的网址链接(如(图1))。当单击这些链接时,将打开IE浏览器并自动链接到相应的网址。如果我们在自己编制的软件中加入这样的对话框,那么在发布软件的同时也为自己的主页做了宣传,也有助于搜集用户的反馈意见,何乐而不为呢?

图1
图1

好,下面我们就用VB 6.0做一个带链接的“关于…”对话框。为实现网址链接功能,我们这里使用了一个API函数ShellExecute。具体方法是:
1.在工程中添加一个模块Module1,在Module1模块的代码窗口输入以下内容:
Public 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
2.添加一个窗体,在弹出的添加窗体对话框中选择“SplashScreen”,单击“打开”按钮。在属性窗口中将窗体的名称改为frmAbout。
3.根据自己的需要适当删改窗体中已存在的Image控件和Label控件。
4.在窗体中绘制一个TextBox控件,名称为Text1。将其Locked 和MultiLine属性设为True(TextBox控件的Locked属性为True时用户将只能看到而不能编辑文本框中的内容),ScrollBars属性设为2-Vertical。
5.再在窗体中放置两个Label控件,分别命名为lblLink1和lblLink2。将它们的Font属性设置成带下划线,ForeColor属性为蓝色,MouseIcon属性选择一个手形的鼠标指针,MousePointer属性设为99-Custom。
6.在窗体frmAbout的代码窗口中输入下面的代码。
Option Explicit
Dim link1, link2 As String
Private Sub Form_KeyPress(KeyAscii As Integer)
Unload Me '按任意键删除窗体
End Sub
Private Sub Form_Load
Dim filename, NextLine As String
Dim fileno, line As Integer
Text1.Text = "" '清空文本框
fileno = FreeFile() '设置文件号
filename = "info.dat" '指定文件名
Open filename For Input As fileno '打开文件
Do Until EOF(fileno) '一直做到文件结束
line = line + 1 '当前行数
Line Input #fileno, NextLine '读取一行放到NextLine变量中
If line = 1 Then link1 = NextLine '第1行内容放到link1变量中
If line = 2 Then link2 = NextLine '第2行内容放到link2变量中
If line > 3 Then Text1.Text = Text1.Text & NextLine & Chr(13) & Chr(10) '第3行以后的内容放到文本框中
Loop
Close fileno '关闭文件
lblLink1.Caption = link1 '显示连接文字
lblLink2.Caption = link2
End Sub
Private Sub Frame1_Click
Unload Me '单击Frame时删除窗体
End Sub
Private Sub lblLink1_Click
Dim linkadd As Long
linkadd = ShellExecute(0&,vbNullString,link1,vbNullString,vbNullString,vbNormalFocus)
'用户单击链接文字时打开IE浏览器并转到相应的链接
End Sub
Private Sub lblLink2_Click
Dim linkadd As Long
linkadd = ShellExecute(0&,vbNullString,link2,vbNullString,vbNullString,vbNormalFocus)
'用户单击链接文字时打开IE浏览器并转到相应的链接
End Sub
7.最后,在程序主窗体的“帮助/关于…”菜单的单击事件中加入frmAbout.Show来显示我们刚刚做好的“关于…”对话框。
需要说明的是,这里我们把文本框中要显示的内容以及网址链接的信息都放在了一个名为info.dat的文本文件当中。这样,当我们要修改这些信息时只要编辑info.dat文件就行了,而不必重新编译整个程序。文件的格式如((图2))所示。
图2
图2

第1行和第2行是两个链接,将显示在lblLink1和lblLink2中。从第4行开始到文件结束的内容将显示在文本框中。
如果您有兴趣,还可以把文本框中的内容做成滚动字幕效果,相信你可以做出更“酷”更“炫”的效果来。