在传统的超链接控件中,如IE浏览器中的超链接,通常只能看到文本形式的链接。然而,在某些应用场景中,可能需要在链接旁边显示一个图像,或者在鼠标悬停时改变链接的颜色,以提供更丰富的视觉反馈。为了实现这些功能,开发了CBitmapHyperLink类,它继承自CHyperLink,并增加了显示图像和改变悬停颜色的功能。
CBitmapHyperLink类的主要特点包括:
要将CBitmapHyperLink集成到应用程序中,请按照以下步骤操作:
#include "BitmapHyperLink.h"
CBitmapHyperLink m_Link;
LRESULT OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
{
// ...
m_Link.SetHyperLink(_T("http://www.google.com"));
m_Link.SetLabel(_T("Looking for something?"));
m_Link.SubclassWindow(GetDlgItem(IDC_STATIC_URL));
m_Link.SetExtendedStyle(HLINK_LEFTIMAGE | HLINK_UNDERLINEHOVER | HLINK_NOTOOLTIP);
m_Link.SetLinkColor(RGB(0, 0, 0));
m_Link.SetVisitedColor(RGB(0, 0, 0));
m_Link.SetHoverColor(RGB(0, 0, 255));
HBITMAP hBmp = m_Link.AddBitmap(IDB_BITMAP);
ATLASSERT(hBmp);
// ...
return TRUE;
}