当没有节点可见时如何显示我自己的文本

How Can I show my own text when no node is visible

我使用虚拟树视图,当没有节点可见时,我想在组件中显示不同的消息,而不考虑列。

你有什么想法吗? 谢谢。

OnPaintBackground 事件编写处理程序。例如:

procedure TForm1.VirtualStringTreePaintBackground(Sender: TBaseVirtualTree;
  TargetCanvas: TCanvas; R: TRect; var Handled: Boolean);
begin
  if Sender.VisibleCount = 0 then
  begin
    Handled := True;
    TargetCanvas.TextOut(10, 10, 'List has no visible nodes.');
  end;
end;

如果您有兴趣在控件为空时显示文本(而不仅仅是当它们的节点被隐藏时),您可以使用 EmptyListMessage 属性.