说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VC中用CPPToolTip轻松实现工具提示

HTML文档下载 WORD文档下载 PDF文档下载
CPPToolTip是一个非常棒的工具提示实现,它支持HTML-lite语句、CSS样式表、菜单、工具条、淡入淡出、超链接、动画、表格等等超强功能。

下载源代码

 

CPPToolTip是一个非常棒的工具提示实现,它支持HTML-lite语句、CSS样式表、菜单、工具条、淡入淡出、超链接、动画、表格等等超强功能。

 

 

一、使用CPPToolTip的第一步:文件的引用

 

文件
描述
PPTooltip.h
PPTooltip.cpp
CPPTooltip 类

PPHtmlDrawer.h PPHtmlDrawer.cpp

CPPHtmlDrawer类. 在tooltip里画出HTML字符串。

PPDrawManager.h
PPDrawManager.cpp

CPPDrawManager类是一组图形处理方法集
CeXDib.h
CeXDib.cpp
CCeXDib类,感谢Davide Pizzolato 和 Davide Calabro的提供. 这个类实现了背景特效.

 

如果需要使用背景特效,需要定义USE_SHADE:
在 PPDrawManager.h 中

 

如果需要使用背景特效,需要定义USE_SHADE:

在 PPDrawManager.h 中 #define USE_SHADE

 

 

二、CPPToolTip的基本使用方法:创建CPPToolTip对象

 

CPPToolTip m_tooltip;

然后创建窗口,对于对话框程序,可以在OnInitDialog中

 

CDialog::OnInitDialog();m_tooltip.Create(this);

然后可以调用AddTool为其它控件注册工具提示,例如:

 

m_tooltip.AddTool(GetDlgItem(IDC_BUTTON1), _T("IDC_BUTTON1控件的工具提示"));

可以为某个区域添加工具提示,例如:

 

m_tooltip.AddTool(this, _T("方框中的Tooltip"),  CRect (100, 100, 200, 200));

另外,你需要在PreTranslateMessage中用RelayEvent将鼠标消息传递到工具提示控件中。

 

BOOL ... ::PreTranslateMessage(MSG* pMsg){    m_tooltip.RelayEvent(pMsg); }
三、为工具条添加工具提示
1)在CMainFrame头文件中创建CPPToolTip对象:
CPPToolTip m_tooltip;
2)在CMainFrame::OnCreate() 中调用AddToolBar方法:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct){    ...    m_tooltip.Create(this);    //为工具条添加工具提示    m_tooltip.AddToolBar(&m_wndToolBar);    return 0;}
3)用RelayEvent传递鼠标消息
BOOL CMainFrame::PreTranslateMessage(MSG* pMsg){    m_tooltip.RelayEvent(pMsg);}
四、为菜单添加工具提示
1)在CMainFrame头文件中创建CPPToolTip对象:
CPPToolTip m_tooltip;
2)在CMainFrame::OnCreate() 中调用Create方法:
m_tooltip.Create(this);
3)取消注释行,启用菜单工具提示
在PPTooltip.h 中
#define PPTOOLTIP_USE_MENU
4)在CMainFrame添加两个消息处理
void CMainFrame::OnMenuSelect(UINT nItemID, UINT nFlags, HMENU hSubMenu){     m_tooltip.OnMenuSelect(nItemID, nFlags, hSubMenu);     CFrameWnd::OnMenuSelect(nItemID, nFlags, hSubMenu);}void CMainFrame::OnEnterIdle(UINT nWhy, CWnd* pWho){     m_tooltip.OnEnterIdle(nWhy, pWho);}
5)用RelayEvent传递鼠标消息
BOOL CMainFrame::PreTranslateMessage(MSG* pMsg){    m_tooltip.RelayEvent(pMsg); }
CPPToolTip还有很多超棒的功能期待您的发现。

 

一次错误估算带来的启示 苹果开发者中心被黑:开发者信息或被窃取 SIM卡加密存漏洞 将影响数亿计的手机用户 搜狗茹立云:探索引擎产品落地 浏览器+搜索模式会成主流吗? 大势所趋,IBM Acme Air至少使用Netflix的5个开源工具 【观察】跨越“朦胧期”的云计算:产业、核心技术、生态圈以及突破点 Rovio Account:平台化之路修成正果 甲骨文总裁马克•赫德采访实录:用软硬件集成一体机打垮对手 如何一步一步打造高可扩展性的应用程序? 用Java编程,请保持简洁! 从安全隐患带来的商机来看,Hadoop同样很美 三年增四倍:如今谷歌服务占北美互联网流量四分之一 决战低功耗?Intel明年推低功耗Xeon处理器 在软件架构上增加新功能的注意事项 90后的代码界“女神”李雪:在编程中找到自己的“灵魂” 大数据之路不乏荆棘,然则其中的机遇却高于一切 iPhone销量令人意外:苹果Q3财季净利69亿美元 同比下滑 励志:12位早起的IT大佬们让小伙伴们都惊呆了 独家:苹果5周年限免神作,BADLAND开发者访谈 10亿次订阅!苹果Podcast的里程碑 免费利器Unity 4.2正式发布 支持WP8、Win8和BB10 SDCC 2013:Pinterest首位中国籍工程师两场演讲议题确定 甲骨文公布中国首届“Duke选择奖”名单 Moco、X幻想、开源中国获奖 直接拿来用,10个PHP代码片段 编程的未来 数据将成为主角 OpenCL 2.0发布,带来更强悍的异构计算能力 代码审查方式大调查 辅助工具居首(信息图) 一网打尽当下NoSQL类型、适用场景及使用公司 初创公司Treasure Data:每天处理7000亿行数据的20万次查询 豌豆荚王俊煜:将推支付SDK 与开发者3:7分成 英特尔-百度移动应用测试中心(MTC)正式启动 请问vc程序如何打包,可以在离开vc环境也可以运行? 怎么改变默认的打印机? win2000 下运行dos程序 报直接访问硬盘错误,有无解决方案 如何获取文本文件中的内容? 数据窗口问题求急!!! 有关线程。。欢迎讨论。。。 如何让GUI程序拥有一个console窗口 哪儿有可以加载背景图片的TTrackBar下载? 急!!!!! - 可以多加分 十万火急!!局域网不能访问!!(高分) 为什么程序不能发布成可执行文件? help!出现了很奇怪的现象?为什么我的asp代码不执行 等待高手! HtmlInputFile控件的使用问题 在UNIX+ORACLE+C++环境下开发的程序员的工资问题 怎样判定有几块硬盘!!!求助高手!!!!!!! 950元出售SCJP考试劵(仅限成都市) 我想利用asp中的FileSystemObject对象把一个已存在的文件改名,改成我希望的名字? 挺简单的程序运行错,请指点! 在修改vsflex控件内数据的时,输入汉字需要每次设定输入法,有没有好的办法 急求代码大全的英文电子书,哪位有的?在线等!! 小难题 在UNIX+ORACLE+C++环境下开发的程序员的工资问题 取消地址和工具栏? 诚心请教 工具栏上加下拉组合框的问题 FFDD 2.0 系统件开发规则 有MIS或ERP选型经验的朋友请点击,斑竹请务必帮助我! 系统件快速开发解决方案 —系统转系统件方案 关于paradox的字段设置 谁有jb7的注册码?能发给我吗? 我想让一个存储过程最大执行10秒,超时退出,怎么实现? 数据库连接问题 在delphi的paradox 7 的字段设置 单网卡如何帮定双IP? 这样都有?你们给我我的可用分增加了 不用hook,能不能把其他应用程序的关闭按钮或最小化最大化按钮屏蔽掉?? 如何把float转成CString 怎么把SQL SERVER2000 数据库中的表转成.dbf格式的表!谢谢 如何得到一个图形按钮的句柄啊?好郁闷!!! 关于setfilter()函数的问题 谁知道四川的高程考试什么时候报名?哪里? illegal character: \12288???什么是不合法的存在?? 关于wav格式的声音文件 com 、active控件,b/s,asp到底什么关系啊 C++高手请过来! 怎么切换分割后的视图类 软件工程师的职业生涯――从入门到精通 SOS(ACTIVEREPORT) 基于RichText的查找和替换函数??BCB自带的那个太滥了。(1--[查找]100分) 把float转为CString 基于RichText的查找和替换函数??BCB自带的那个太滥了。(2--[替换]100分) 描写春/夏/秋/冬/的诗每种各两首[要有诗``作者``朝代]一定要教教我```千万别打错字``谢谢`` 写一张照片的说明(100字左右) 照片请看如下描述照片上是一幅夏日池塘里的情景,阳光明媚,水面上漂浮着的大大小小的荷叶,旁边还会插着几株亭亭玉立的荷花,这样的情景写一篇说明,主要 为什么 太阳高度角=90-纬度差 茶杯值两元钱杯子必备太贵一元钱请问杯子杯盖个值多少元 梅雨天怎样对抗潮湿天气带来的不便 该地正午太阳高度角,与该地到直射点相差纬度之间的关系怎样? 描写春天、夏天、秋天、冬天的古诗,要整首的还要名字朝代(多点15分啊) 砌墙用什么水泥好 2013年夏天怎么还不热怎么今天天气现在还挺凉快的?还会像往年一样达到快40度么?还会热那么久么? 一个杯子、碗有多少毫升?急 水泥地梁几天可以砌墙 怎样在夏天才能不热啊 广州哪里有便宜又好看的碗或杯子我一个朋友想要进一些漂亮的陶瓷碗和杯子去卖,但不知道在哪里进货,而且便宜.想请朋友们帮帮忙!我们打算卖出去的价格在5元以下 ,所以进货价相对来说要 室外温度,多少度才会结冰 请问夏天发面一般需要多久?发面这样控制好时间? 雪花的形状? 在多少的温度下才可以结冰 我用PH纸测了下洗面奶的酸碱性,开始是绿色,中性,可纸干了后成了黄色,酸性!到底以啥为准? 雪花的形状为什么会是规则的形状 几度温度可结冰 除了用PH试纸还可以怎么区分洗面奶是碱性还是酸性? 怎样知道杯子或碗是否洗干净 请问湖面结冰并且能够行走,气温需要达到几度? 四川盆地海拔比内蒙古高原低,为什么雨量比内蒙古高? 在家洗碗或杯子时,怎样就知道碗或杯子洗干净了? 为什么雪花都是有规则的形状 一个圆柱侧面展开图边长是18点84cm的正方体,这个圆柱高()cm,一个底面的面积是()平方厘米 杯子怎么洗干净 为什么雪会是那么有规则的雪花 青藏高原和四川盆地为什么分别成为我国太阳辐射的高值中心和低值中心 0.1mol/L的碳酸钠溶液应该是透明的,为什么我配制出来的浑浊的,然后有沉淀. 为什么天上下的雪形状是花状呢? 1.一个圆柱的侧面展开图是一个边长为10厘米的正方形,这个圆柱的侧面积是( )平方厘米 小学所有的古诗 带着作者和朝代的从一册到十二册按顺序写我有急用啊 跪求六年级下册语文习作6,速度! 圆柱的侧面展开图正好是一个边长为30cm的正方形.圆柱的侧面积是多少平方厘米? 小学所有学过的古诗(要作者,朝代) 水泥和土能在一起砌墙用吗? 一个圆柱的底面积是8平方厘米,它的侧面展开图正好是一个正方体,这个圆柱的高是? 0.1mol/L Na2CO3溶液中离子浓度由大到小的顺序为? 求该图的面积计算公式 夏天怎么才不热呢? Na2CO3水溶液中各离子浓度大小有H+,CO32-,HCO3-,OH-,Na+解释一下OH-与HCO3-大小的判断 如图2所示,电阻R1的阻值为24Ω,R2的阻值为10Ω,闭合开关后图中电压表的示数为13V求(1)电路中的电流(2)电阻R2两端的电压(3)电源电压(4)若两电阻通电2秒,则消耗的电能分别为多少 怎么夏天才能不热 冬天描写山的景色1段 为什么青藏高于是我国获得太阳辐射最多的地方,而四川盆地是最少的地方 怎么做才能让夏天不热 冬天景色的描写 一个长方体容器里水位高15厘米,底面积是40平方厘米,将一个棱长为4厘米的正方体放入,结果刚好有一半浸入 英语翻译翻译英语句子:1.The boy with the bucket is not as short as the other boy.2.The road ahead has a sharp curve so we have to drive slowly.(什么是sharp curve?)还有一个:For breakfast,Hans eats his eggs sunny-side up.(Sunny side 描写冬天景色的场面三段 每段50字 四川盆地太阳辐射能低的原因 关於洗面奶ph值的问题洗面奶如何降低ph值让他刺激性变小?加水越多ph值越小吗?那大部分的保湿洗面乳是不是都很温和? 生鹌鹑蛋在白醋里的实验实验开始,蛋在杯底,蛋表面有__出现.随后,蛋慢慢__,过一会蛋又__,这样周而复始 溶液的酸碱度和氢离子的浓度有关还是个数? 洗面奶ph值多少最好 各位大哥哥大姐姐,请帮找一些描写春\夏\秋\冬的古诗古词,要写清楚诗人\朝代\注释. 《秋天》本文描写了三幅图片,请用自己的语言将一幅图片描述出来.100字左右 洗面奶放黄色ph纸变成蓝色是多少ph值
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘