procedure ChangeSelectNode(tree:TTreeView;x,y:integer;Button: TMouseButton); var anode:TTreeNode; begin if button=mbright then {是否按了右键} begin anode:=tree.GetNodeAt(x,y); {取x,y坐标下的结点} if anode<>nil then anode.Selected :=true; {设置点中结点为选中} end; end;在ONmousedown中调用
procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if Button=mbRight then if Treeview1.GetNodeAt(X,Y)<>nil then Treeview1.GetNodeAt(X,Y).Selected:=true; end;
var
anode:TTreeNode;
begin
if button=mbright then {是否按了右键}
begin
anode:=tree.GetNodeAt(x,y); {取x,y坐标下的结点}
if anode<>nil then
anode.Selected :=true; {设置点中结点为选中}
end;
end;在ONmousedown中调用
Shift: TShiftState; X, Y: Integer);
begin
if Button=mbRight then
if Treeview1.GetNodeAt(X,Y)<>nil then
Treeview1.GetNodeAt(X,Y).Selected:=true;
end;