MFC程序员WTL指南(6)高级对话框用户界面类
2008-01-19 20:25:19 来源:WEB开发网CTreeViewCtrl对HTREEITEM的每一个操作,CTreeItem都有与之对应的方法,正像每一个关于HWND的API都有一个CWindow方法与之对应一样。查看ControlMania2的代码可以看到更多的CTreeViewCtrlEx和CTreeItem类的方法的演示。
CHyperLink
CHyperLink是一个CWindowImpl派生类,它子类化一个static text控件,使之变成可点击的超链接。CHyperLink根据用户的IE使用的颜色画链接对象,还支持键盘导航。CHyperLink类的构造函数没有参数,下面是其它的公有方法。
CHyperLink methods
CHyperLinkImpl类内含实现一个超链接的全部代码,如果不需要重载它的方法或处理消息的话,你可以直接使用CHyperLink类。
SubclassWindow()BOOL SubclassWindow(HWND hWnd)
重载函数SubclassWindow()完成控件子类化,然后初始化该类保有的内部数据。
Text label managementbool GetLabel(LPTSTR lpstrBuffer, int nLength)
bool SetLabel(LPCTSTR lpstrLabel)
获得或设置控件显示的文字,如果不指定显示文字,控件会显示资源编辑器指定给控件的静态字符串。
Hyperlink managementbool GetHyperLink(LPTSTR lpstrBuffer, int nLength)
bool SetHyperLink(LPCTSTR lpstrLink)
获得或设置控件关联超链接的URL,如果不指定超链接URL,控件会使用显示的文字字符串作为URL。
Navigationbool Navigate()
导航到当前超链接的URL,该URL或者是由SetHyperLink()函数指定的URL,或者就是控件的窗口文字。
Tooltip management
没有公开的方法设置工具提示,所以需要直接使用CToolTipCtrl成员m_tip。
下图显示的就是ControlMania2对话框中的超链接控件:
在OnInitDialog()函数中设置URL:
m_wndLink.SetHyperLink ( _T("http://www.codeproject.com/") );
更多精彩
赞助商链接