一?/p>
syslink controls
超链接控?/p>
系统环境?/p>
Windows 7
软件环境?/p>
Visual Studio 2008 SP1
本次目的:实?/p>
Syslink Control
超链接的效果
我们知道?/p>
VS2008
中,
VC
里面多了
syslink controls
?/p>
command
?/p>
split buttons
?/p>
network address controls
。对?/p>
Syslink Control
的使用,将在此介绍。目前该控件支持?/p>
HREF
?/p>
ID
的锚定标?/p>
<a>
?/p>
MSDN
如下说明?/p>
An HREF may be of any protocol, such as http, ftp, mailto, and so on. An ID is an optional
name unique within a SysLink control and associated with an individual link. Links are also
assigned a zero-based index according to their position within the string. This index is
used to access a link.
首先:建立一个对话框工程,添加一?/p>
Syslink Control
控件?/p>
然后,为控件添加
CLinkCtrl
类的变量,这里名称为
m_Link
。在对话框初始化函数
OnInitDialog()
里面添加以下代码?/p>
[cpp]
view plaincopy
1.
m_Link.SetWindowText(_T(
"
欢迎光临
<a href="
/
" mce_href="
/
""
http:
//blog.csdn.net/akof1314/">
无幻博客
</a>"));
上面代码中的格式要注意,记得转义字符的使用。接着,为控件添加
NM_CLICK
事件,在
事件函数里面添加如下?/p>
[cpp]
view plaincopy
1.
void
CTestDlg::OnNMClickSyslink1(NMHDR *pNMHDR,
LRESULT
*pResult)
2.
{
3.
// TODO:
在此添加控件通知处理程序代码
4.
PNMLINK pNMLink = (PNMLINK) pNMHDR;
5.
if
(wcscmp(pNMLink->item.szUrl, _T(
"http://blog.csdn.net/akof1314"
)) ==
0)
6.
{ //pNMLink->item.szUrl
代表你点击的那个超链接,
控件上可以显示多个超链接
7.
ShellExecuteW(NULL, L
"open"
, pNMLink->item.szUrl, NULL, NULL, SW_SHO
WNORMAL);
//
主要执行语句
8.
}
9.
*pResult = 0;
10.
}
效果如下?/p>