现在的位置: 首页 > 综合 > 正文

[C]可在任意位置弹出的BalloonTip(2)

2012年05月15日 ⁄ 综合 ⁄ 共 2892字 ⁄ 字号 评论关闭

          以前写过一篇文章,是用 C# 的自绘制窗口做了一个 Balloon Tip 。这里由于讲的还是 BalloonTip ,所以作为前文的后续。不同的是,这一次是用 windows sdk 的 API  函数直接创建一个 ToolTip 窗口,然后我们就得到了 ToolTip 的窗口句柄,然后可以把 ToolTip 定位到屏幕任意的位置自然就是很简单的事。还是借用上次演示MSN式浮出通知窗口的例子,只是加入了 ToolTip 的相关代码。效果如下:

          

 

          代码比较简单,详见附件中的tooltip.h , tooltip.c。

          创建tooltip窗口用的是 CreateWindow, 窗口类名是“Tooltips_Class32”。 第一个参数 isBalloon 指定创建 ToolTip 的形状,如果为 TRUE 则创建的是“balloon”型的 ToolTip,也就是类似卡通画里的会话气泡,则显示时的位置坐标(x,y)是气泡的箭头指向点的坐标。否则创建的是普通的矩形ToolTip,显示时的位置坐标(x,y)是ToolTip窗口的某个端点(例如左上角)的坐标。

Code_CreateToolTip

 

 

          显示ToolTip时,设置标题,文本,指向位置,是通过给窗口发送属于 ToolTip 的以 “TTM_” 为前缀的消息来完成的。然后我们通过一个定时器设置ToolTip在屏幕上显示的时间。  

Code_ShowToolTip

 

 

          最后是源代码下载链接(和前文下载链接一致):

          http://files.cnblogs.com/hoodlum1980/NotifyWndDemo2.rar

抱歉!评论已关闭.