C#中,当鼠标移动到控件上,动态显示提示内容 ToolTip

【背景】
写了个C#的小程序,其中在Settings窗体中有些配置参数,希望在鼠标移动到对应的配置选项上,动态显示相关的说明解释内容。

【解决过程】
1.原先就已经知道,有些控件,是带ToolTipText的属性的,所以直接写入对应提示内容就可以了。
但是现在想要实现的带提示内容的控件,也包括那些本身没有ToolTip属性的控件。
所以想要找到对应的解决办法。

2.网上有人说,从ToolBox中拖一个ToolTip,放到对应控件上即可,我试了试,不好用。
因为有些提示内容,是想要单独添加给某个checkbox之类的控件的,
而单独的拖动ToopTip过去,往往只能放到比较大的面板上,比如TabPage上面,所以很不方便自定义。

3.后来参考这里:C#如何实现当鼠标移到button上时,提示该button的功能?
添加对应代码。

再后来也找到了官网的解释:
http://msdn.microsoft.com/zh-cn/library/8f3wy7cw(v=vs.80).aspx
其中也有对应sample code。

5.最后自己实现的相关代码如下:

1
2
3
4
5
6
7
8
9
ToolTip ttpSettings = new ToolTip();
ttpSettings.InitialDelay = 200;
ttpSettings.AutoPopDelay = 10 * 1000;
ttpSettings.ReshowDelay = 200;
ttpSettings.ShowAlways = true;
ttpSettings.IsBalloon = true;
 
string tipOverwrite = "Enable this to allow overwrite an existing file on skydrive while uploading a duplicated file.";
ttpSettings.SetToolTip(ckbOverwrite, tipOverwrite); // ckbOverwrite is a checkbox

显示出来的效果如下:

tool tip ballon的效果

posted on 2013-10-22 15:48  larryle  阅读(12195)  评论(0编辑  收藏  举报