当我移动项目时,导致'提示'在列表视图上重新启动

时间:2009-09-06 10:17:49

标签: delphi listview tooltip delphi-2007 tlistview

当然,我之前已经看过这件事,但是副手我找不到任何例子。

我有一个TListView,设置在'report'viewstyle中。它有大约六个子项目,我们想要做的一件事就是让listview上的'提示'(工具提示)动态显示另一个数据字段。也就是说,每次将鼠标移动到任何给定行上时,“提示”都会显示与该特定行相关的一些文本。

我在那里 - 我可以使用OnInfoTip方法做到这一点,但不幸的是,一旦提示出现,Windows似乎决定我再次看到列表视图的提示,直到我移开鼠标从列表视图,然后再回到'结束'。只需将鼠标向下移动到下一行,一直将鼠标放在控件上,就不会说服程序显示新提示。

为了清楚 - 我已经让OnInfoTip正常工作,以便程序显示与我第一次移动鼠标的项目相关的正确提示。更改提示文本不是问题。问题是将鼠标移动到列表视图中的另一个项目不会导致软件显示新提示。 (希望这很有意义)。

是否有一些正确的方法可以让这种行为发挥作用,或者我最终会使用鼠标悬停做一些蠢事,然后手动绘制一个提示框(等)?

3 个答案:

答案 0 :(得分:4)

检查以下链接:

Display Custom Hints for TListView Sub Items

修改

我刚刚在 delphi7 上检查了它,它在列表视图上移动鼠标后动态显示每一行的提示。

答案 1 :(得分:0)

Offtopic:这在Virtual Treeview组件中很简单,它是内置功能。<​​/ p>

答案 2 :(得分:0)

我正在使用OnInfoTip事件(我不需要提示子项目)。提示是“闪烁”(显示/隐藏/显示/隐藏/显示/隐藏/显示/隐藏)。发现listview的ShowHint是假的。将它设置为True,它可以正常工作。