代码之家  ›  专栏  ›  技术社区  ›  Linas

如何获取TVirtualStringTree的热节点坐标?

  •  2
  • Linas  · 技术社区  · 16 年前

    VirtualStringTree 当鼠标在其上时,其单元格会有所不同。如何检测热节点的坐标?我知道有一个HotNode属性,但它只返回鼠标光标下的节点。我需要得到该节点的单元坐标(X,Y)。

    1 回复  |  直到 10 年前
        1
  •  4
  •   Rob Kennedy    16 年前

    您可以使用 GetDisplayRect 方法。也, InvalidateNode 将告诉您刚刚无效的节点的坐标。

    出于您的目的,我认为您不需要知道任何任意节点的坐标。相反,在绘制节点时,您需要知道正在绘制的节点是否为热节点。所有特定于节点的所有者绘制事件都会告诉您当前节点和坐标,除了 OnPaintText ,它只告诉您节点。不过,不需要自己跟踪当前的热节点。检查一下 Node = Sender.HotNode 确定用于绘制节点及其文本的样式。

    推荐文章