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;
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;