图形超链接类 作者:huwell 下载本文示例代码 前言: 我在写程序的过程中发现著名的CHyperLink类不能用于图形控件的超链接,于是在其基础上修改了一下, 为了方便用户的使用,并没有与CHyperLink类整和,而是另立了一个类,叫CMapHyperLink。 本MapHyperLink类现在只对图形控件(picture control)生效,尽量不要使用在文字控件上。文字控件的超链接设计可以使用Chris Maunder的HyperLink类。 一、用户可使用的成员函数: 1) void SetURL(CString strURL); 设置要访问的互联网地址,如 SetURL("http://www.google.com"); 2) CString GetURL() const; 获取已设置的URL。 3) void SetTipText(CString strURL); 设置提示条(CToolTipCtrl)的文字内容,如果不在此设置,那就默认是您设置的URL地址,如 SetTipText("欢迎访问强大的google搜索"); 4) CString GetTipText() const; 获取已设置的提示条内容。 5) void SetVisited(BOOL bVisited = TRUE); 设置超链接已被访问的标记。 6) BOOL GetVisited() const; 获取超链接是否被访问的标记值。 7) void SetLinkCursor(HCURSOR hCursor); 设置鼠标在超链接状态的图标,默认是手型图标。 8) HCURSOR GetLinkCursor() const; 获取鼠标在超链接状态下的图标句柄。 9) void SetAutoSize(BOOL bAutoSize = TRUE); 设置是否允许自动调节图形的位置,即在窗口进行缩放时,默认是允许。 10) BOOL GetAutoSize() const; 获取SetAutoSize的当前值。 二、一般最为常用的就是: void SetURL(CString strURL); void SetTipText(CString strURL); 两个,所以简单易用。 三、使用方法 只要将一个图形控件(picture control)与CMapHyperLink类绑定即可。用法与CHyperLink类相同。 四、补充说明 为使用上的简单,CMapHyperLink类并没有和CHyperLink类一起整和,用户可以放心的调用,即使没有调用其成员函数,也不会出现编译错误。 另外,本类在编写的过程中肯定还有不完善的地方,请各位同仁不吝指教,感谢! 感谢Chris Maunder的无私奉献。 |