我的TreeView很整齐,所有的叶子都在第3层,我是想在窗体的OnShow事件中,让树状图全展开,然后对于所有的叶子,若满足某个条件(与数据库相关),则将其底纹的颜色改成黄色,若不满足这个条件则还是白色。注意,是对某几个满足条件的叶子节点的字符底纹颜色作改变,而不是整棵树!
我是用了:
for i:=0 to TreeView1.Items.Count-1 do
begin
if TreeView1.Items.Item[i].Level=3 then
begin
if {该叶子节点满足某条件} then
TreeView1.Items.Item[i].//到这里我是想输入.Canvas,但悬浮提示框里却没有,说明不对。不知道该怎样了。求高手指教! 在百度知道提问,只有一个人回答,而且给的答案是这个:..\Program Files\Borland\Delphi7\Demos\CustomDraw\
我看了下这位六级的大神指明的这个示例程序——看不懂啊——我菜鸟一个啊!还求神们指点迷津啊——或者把这个示例代码给一些中文注释让大家都学习学习也可以啊~~~~~~~~~~~~跪求!!!
我是用了:
for i:=0 to TreeView1.Items.Count-1 do
begin
if TreeView1.Items.Item[i].Level=3 then
begin
if {该叶子节点满足某条件} then
TreeView1.Items.Item[i].//到这里我是想输入.Canvas,但悬浮提示框里却没有,说明不对。不知道该怎样了。求高手指教! 在百度知道提问,只有一个人回答,而且给的答案是这个:..\Program Files\Borland\Delphi7\Demos\CustomDraw\
我看了下这位六级的大神指明的这个示例程序——看不懂啊——我菜鸟一个啊!还求神们指点迷津啊——或者把这个示例代码给一些中文注释让大家都学习学习也可以啊~~~~~~~~~~~~跪求!!!
解决方案 »
- delphi和ACCESS连接以后,如何关闭这个连接?
- 谁给我一个Delphi施用的序列号?
- 如何在DBGridEH中得到当前行的颜色
- 求 像 用友 "华表" 功能一样强大的 免费 的 VCL 控件?????????????
- 一个有难度的FastReport问题
- 我修改一个别人的Dephi程序,从我的机器上正常运行,但是到别的机器上就不能运行?
- 请教memo的一点小问题
- 请问delphi7包括delphi6的全部功能吗?
- 我可不可以用下面的方法取出stringgrid的字段名
- 要获得一个ADODataSet里面查询出来的某列的某条记录的具体值
- 菜鸟提问:怎样用Ehlib实现打印功能
- 求Delphi高手写个DLL封装
procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if (Node.Level = 3) {and (该叶子节点满足某条件)} then
Sender.Canvas.Brush.Color := clGreen ; DefaultDraw := True
end;
嗯嗯,很好很强大,只不过没法自动刷新,本想在会改变结点满足条件的地方调用一下这个函数进行刷新,结果发现——我太菜了,函数参数都写不好,只好向了一个山寨法子:
TreeView1.Selected.Parent.Collapse(True);
TreeView1.Selected.Parent.Expand(True);