使用TTreeView.OnAdvancedCustomDrawItem或TTreeView.CustomDrawItem,如何完全绘制树视图项? docwiki上没有高级自定义绘图项的示例代码。
Delphi documentation wiki有一个令人困惑的示例,它引用了示例中不存在的代码,并且无法编译。我认为问题分为三个独立的绘画问题:
最后,应该设置DefaultDraw := false
,以便控件不会为节点执行默认绘制。
在我看来,这样一个基本的东西应该作为一个真正的工作样本存在于某个地方,但我发现的最接近的是文档维基,它只是说“看到这个其他的东西”,并没有提供其他的链接代码。
非工作样本带有相当多的手挥动和不完整的代码,引用了一些未在本演示中定义的内容,但显然是从工作样本中剪切和粘贴的。一些人所做的改变是显而易见的(比如定义你自己的方式来获取画笔的颜色,以及你自己决定节点应该是什么字体的方式),有些不是,比如如何实现{{1} }:
DrawButton