procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var I:integer; begin for I:=0 to treeview1.items.count-1 do if treeview1.items.item[i].selected then treeview1.items.item[i].stateindex:=1 else treeview1.items.item[i].stateindex:=2; end;将上面的语句稍微改一下即可.
procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView; Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean); begin if Node.Selected then begin DefaultDraw:=false ; TreeView1.Canvas.Brush.Color:=clBlue; TreeView1.Canvas.Font.Color:=clRed; TreeView1.Canvas.FillRect(Node.DisplayRect(true)); TreeView1.Canvas.Textout(Node.DisplayRect(true).Left+2, Node.DisplayRect(true).top+2, node.text); end end;
procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView; Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean); begin if Node.Text = '123' then //根据Node的具体值给出判断条件 begin DefaultDraw:=True ; TreeView1.Canvas.Font.Color:=clRed; TreeView1.Canvas.Textout(Node.DisplayRect(true).Left+2, Node.DisplayRect(true).top+2, node.text); end end;
Shift: TShiftState; X, Y: Integer);
var I:integer;
begin
for I:=0 to treeview1.items.count-1 do
if treeview1.items.item[i].selected
then treeview1.items.item[i].stateindex:=1
else
treeview1.items.item[i].stateindex:=2;
end;将上面的语句稍微改一下即可.
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if Node.Selected then
begin
DefaultDraw:=false ;
TreeView1.Canvas.Brush.Color:=clBlue;
TreeView1.Canvas.Font.Color:=clRed;
TreeView1.Canvas.FillRect(Node.DisplayRect(true));
TreeView1.Canvas.Textout(Node.DisplayRect(true).Left+2,
Node.DisplayRect(true).top+2,
node.text);
end
end;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if Node.Text = '123' then //根据Node的具体值给出判断条件
begin
DefaultDraw:=True ;
TreeView1.Canvas.Font.Color:=clRed;
TreeView1.Canvas.Textout(Node.DisplayRect(true).Left+2,
Node.DisplayRect(true).top+2,
node.text);
end
end;