社区
ATL
帖子详情
WTL下,如何让Radio Button显示ToolTip?
rcbblgy
2009-09-28 05:10:44
因为是要在组件里实现,所以用到PreTranslateMessage的方法都不行。
找到了一个WTL的ToolTip类,
http://www.viksoe.dk/code/listtip.htm
,是用于List的,我想改成RadioButton可用的,有点困难。
...全文
452
11
打赏
收藏
WTL下,如何让Radio Button显示ToolTip?
因为是要在组件里实现,所以用到PreTranslateMessage的方法都不行。 找到了一个WTL的ToolTip类,http://www.viksoe.dk/code/listtip.htm,是用于List的,我想改成RadioButton可用的,有点困难。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xylicon
2009-09-30
打赏
举报
回复
[Quote=引用 10 楼 rcbblgy 的回复:]
http://topic.csdn.net/t/20021020/13/1109608.html
用这个帖子里面的类实现的
[/Quote]
这个方法不错。封装成一个这样的类,一劳永逸了。
rcbblgy
2009-09-30
打赏
举报
回复
http://topic.csdn.net/t/20021020/13/1109608.html
用这个帖子里面的类实现的
rcbblgy
2009-09-29
打赏
举报
回复
[Quote=引用 7 楼 xylicon 的回复:]
在你的组件中定义一个CToolTipCtrl 对象 m_toolTip。
在组件的OnCreate函数中(或者OnInitDialog中如果是对话框的话)加入下面代码
m_toolTip.Create(m_hWnd);
m_toolTip.AddTool(m_hWnd); // 这里m_hWnd是你要在这个窗口显示tooltip。
响应MESSAGE_RANGE_HANDLER(WM_MOUSEFIRST, WM_MOUSELAST, OnMouseMessage)消息
LRESULT YourCtrlClass::OnMouseMessage(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
MSG msg = { m_hWnd, uMsg, wParam, lParam };
if(m_toolTip.IsWindow())
m_toolTip.RelayEvent(&msg);
bHandled = FALSE;
return 1;
}
在OnMouseMove中加下面代码
m_toolTip.UpdateTipText(_T("tipText"), m_hWnd);
m_toolTip.Activate(TRUE);
如果想不显示tooltip,设置m_toolTip.Activate(FALSE);就行了。
[/Quote]
按照这个方法做了,没有效果啊。
xylicon
2009-09-28
打赏
举报
回复
还有一种方法是,利用TTN_NEEDTEXT Notification 来设置 tooltip的文字。这个在MFC里试过,我没在wtl上试过,应该是都可以的吧。
xylicon
2009-09-28
打赏
举报
回复
在你的组件中定义一个CToolTipCtrl 对象 m_toolTip。
在组件的OnCreate函数中(或者OnInitDialog中如果是对话框的话)加入下面代码
m_toolTip.Create(m_hWnd);
m_toolTip.AddTool(m_hWnd); // 这里m_hWnd是你要在这个窗口显示tooltip。
响应MESSAGE_RANGE_HANDLER(WM_MOUSEFIRST, WM_MOUSELAST, OnMouseMessage)消息
LRESULT YourCtrlClass::OnMouseMessage(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
MSG msg = { m_hWnd, uMsg, wParam, lParam };
if(m_toolTip.IsWindow())
m_toolTip.RelayEvent(&msg);
bHandled = FALSE;
return 1;
}
在OnMouseMove中加下面代码
m_toolTip.UpdateTipText(_T("tipText"), m_hWnd);
m_toolTip.Activate(TRUE);
如果想不显示tooltip,设置m_toolTip.Activate(FALSE);就行了。
lcmlhs_2005
2009-09-28
打赏
举报
回复
我也在弄这方面的东东,我的是要把提示加到ActiveX控件里的某个按钮上,可是就是不显示提示文本,不知怎么回事儿
rcbblgy
2009-09-28
打赏
举报
回复
[Quote=引用 3 楼 xylicon 的回复:]
自己加个CToolTipCtrl 就行了.
[/Quote]
WTL和MFC有些地方还是不太一样的,EnableToolTips这个函数在WTL里就没有,另外用CToolTipCtrl,似乎要用到PreTranslateMessage,因为是组件里,所以不行。
rcbblgy
2009-09-28
打赏
举报
回复
[Quote=引用 3 楼 xylicon 的回复:]
自己加个CToolTipCtrl 就行了.
[/Quote]
具体一点?
xylicon
2009-09-28
打赏
举报
回复
自己加个CToolTipCtrl 就行了.
rcbblgy
2009-09-28
打赏
举报
回复
[Quote=引用 1 楼 tr0j4n 的回复:]
http://www.codeproject.com/KB/wtl/CToolTipDialog.aspx
可以随意用于任何WTL控件
[/Quote]
里面用到了PreTranslateMessage,不知道行不行,我试试看吧
MoXiaoRab
2009-09-28
打赏
举报
回复
http://www.codeproject.com/KB/wtl/CToolTipDialog.aspx
可以随意用于任何WTL控件
使用
WTL
进行Windows桌面应用开发-第二部
1. 在第一部基础上增加更深入的内容,比如
WTL
提供的标准Win32窗口和自定义窗口的使用方式.2. 涉及到一些项目开发难题的窗口自定义的解决方案。3. 涉及到Gdiplus绘图的项目开发难题的一些解决方案。4. 推荐使用的第三方跨平台库, 虽然
WTL
是基于Windows的,但是不妨碍我们使用第三方的库进行开发,减少跨平台开发的学习成本。5.
WTL
是对Win32窗口的薄封装,库是原微软员工开发,是MFC的替代选择。掌握了
WTL
表示你已经基本掌握了Win32的窗口编程.6. 使用
WTL
库完全使用C++开发,不需要其他编程语言,减少学习成本和复杂度,整个
WTL
是开源可控的。7.
WTL
库只能使用VS2005以上版本开发, 因为它依赖ATL库. 不同的VS版本对应的atl版本不一致,建议使用VS2010以上版本开发.
WTL
详细介绍
转自:
WTL
for MFC Programmers, Part I - ATL GUI Classes 在你开始使用
WTL
或着在本文章的讨论区张贴消息之前,我想请你先阅读下面的材料。 你需要开发平台SDK(Platform SDK)。你要使用
WTL
不能没有它,你可以...
SOUI总结之常用功能
这条语句是让新建的窗口
显示
在屏幕的中间,如果想让窗口
显示
在主界面的中间,改为m_dlgSetSkin->CenterWindow(m_hwnd)即可。 在m_dlgSetSkin->SendMessage(WM_INITDIALOG);发送消息时可以带上一些附加参数,如 m_...
MFC90条技巧-带目录(转自网上)
1."属性页的添加: 2."List Control中标题栏(Column)的添加: 3."ToolBar和StatusBar中控件的添加: 4."通过Control创建的控件,对其属性的动态控制: 5."窗口的分割与停靠: ...③如何在
显示
窗
MFC90条技巧 (带目录)
1."属性页的添加: 2."List Control中标题栏(Column)的添加: 3."ToolBar和StatusBar中控件的添加: 4."通过Control创建的控件,对其属性的动态控制: 5."窗口的分割与停靠: ...③如何在
显示
窗口时...
ATL
3,245
社区成员
48,539
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章