WEB开发网
开发学院软件开发VC 在VC中为应用程序添加图形超链接功能 阅读

在VC中为应用程序添加图形超链接功能

 2008-11-14 19:35:28 来源:WEB开发网   
核心提示: 如果用户想动态的改变提示字符串,可以调用CtoolTipCtrl类的成员函数UpdateTipText()来实现,在VC中为应用程序添加图形超链接功能(3),该函数的原型为:void UpdateTipText( LPCTSTR lpszText, CWnd* pWnd, UINT nID

如果用户想动态的改变提示字符串,可以调用CtoolTipCtrl类的成员函数UpdateTipText()来实现,该函数的原型为:

void UpdateTipText( LPCTSTR lpszText, CWnd* pWnd, UINT nIDTool = 0 );

该函数的参数的含义与成员函数AddTool()的参数的含义大同小异,这里不再赘述。

对于超链接来说,一般会在超链接区域改变鼠标的形状,显示手状的鼠标,提示这是一个超链接区域。当然可以在程序中添加一个手状的光标资源,然后使用LoadCursor()函数等加载,这种方法对广大读者朋友一定是耳熟能详了,所以为了扩大读者朋友的编程思路,这里介绍一种从Windows的winhlp32.exe文件中加载光标资源,代码如下:

void CMapHyperLink::SetDefaultCursor()
{
 if (m_hLinkCursor == NULL) // No cursor handle - load our own
 {
  // Get the windows directory
  CString strWndDir;
  GetWindowsDirectory(strWndDir.GetBuffer(MAX_PATH), MAX_PATH);
  strWndDir.ReleaseBuffer();
  strWndDir += _T("winhlp32.exe");
  // This retrieves cursor #106 from winhlp32.exe, which is a hand pointer
  HMODULE hModule = LoadLibrary(strWndDir);
  if (hModule) {
   HCURSOR hHandCursor = ::LoadCursor(hModule, MAKEINTRESOURCE(106));
   if (hHandCursor)
    m_hLinkCursor = CopyCursor(hHandCursor);
  }
  FreeLibrary(hModule);
 }
}

为了根据网页或信箱地址实现超链接功能,需要用到一个WINDOWS API函数ShellExecute(),其原型为:

上一页  1 2 3 4 5 6  下一页

Tags:VC 应用程序 添加

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接