CListCtrl With Web Links

源代码及可执行文件下载地址:http://files.cnblogs.com/rainboy2010/ListCtrlLinkTest.zip

 技术分享

CListCtrlLink是CListCtrl的扩展类,可以在ListCtrl控件中包含网页链接

使用方法:

1. 添加ListCtrlLink.h,ListCtrlLink.cpp,LinkItem.h,LinkItem.cpp文件到你的项目工程中

2. 添加ListCtrl控件,并和相应的CListCtrlLink变量关联

CListCtrlLink    m_listCtrl;

3. 在OnInitDialog()中添加以下代码:

m_listCtrl.InsertColumn(0, _T("Name"), LVCFMT_LEFT, 60);
m_listCtrl.InsertColumn(1, _T("Age"), LVCFMT_LEFT, 60);
m_listCtrl.InsertColumn(2, _T("Company"), LVCFMT_LEFT, 100);
m_listCtrl.InsertColumn(3, _T("Email"), LVCFMT_LEFT, 200);

m_listCtrl.InsertItem( 0, _T("Ana"));
m_listCtrl.SetItemText(0, 1, _T("26"));
m_listCtrl.SetItemText(0, 2, _T("Stanford"), _T("http://www.stanford.edu"));
m_listCtrl.SetItemText(0, 3, _T("Unpublished"));

m_listCtrl.InsertItem(
1, _T("John")); m_listCtrl.SetItemText(1, 1, _T("21")); m_listCtrl.SetItemText(1, 2, _T("Yahoo"), _T("http://www.yahoo.com")); m_listCtrl.SetItemText(1, 3, _T("[email protected]"), _T("mailto:[email protected]")); m_listCtrl.InsertItem( 2, _T("Cassio")); m_listCtrl.SetItemText(2, 1, _T("29")); m_listCtrl.SetItemText(2, 2, _T("Symantec"), _T("http://www.symantec.com")); m_listCtrl.SetItemText(2, 3, _T("cassio@some_email.org"), _T("mailto:cassio@some_email.org")); m_listCtrl.InsertItem( 3, _T("Peter")); m_listCtrl.SetItemText(3, 1, _T("64")); m_listCtrl.SetItemText(3, 2, _T("Retired")); m_listCtrl.SetItemText(3, 3, _T("peter@happy_man.org"), _T("mailto:peter@happy_man.org"));

SetItemText的原型为: BOOL SetItemText(int nItem, int nSubItem, LPCTSTR lpszText, LPCTSTR lpctszUrl = NULL),

如果lpctszUrl不设置值,则不会显示超链接,如设置值,则对应的列显示为超链接,点击超链接,会执行ShellExecute API调用 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。