procedure TMainFrm.TreeView1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if button=mbRight then begin if Self.TreeView1.GetNodeAt(X,Y)<>nil then begin Self.TreeView1.Selected:=Self.TreeView1.GetNodeAt(X,Y); Self.PopupMenu1.Popup( TreeView1.ClientToScreen(Point(X,Y)).X,TreeView1.ClientToScreen(Point(X,Y)).y); end; end; end;试试吧
Shift: TShiftState; X, Y: Integer);
begin
if button=mbRight then
begin
if Self.TreeView1.GetNodeAt(X,Y)<>nil then
begin
Self.TreeView1.Selected:=Self.TreeView1.GetNodeAt(X,Y);
Self.PopupMenu1.Popup(
TreeView1.ClientToScreen(Point(X,Y)).X,TreeView1.ClientToScreen(Point(X,Y)).y);
end;
end;
end;试试吧
我先试一试,对了,那TTreeView的源码从哪里可以看到那,我看ComCtrls里面只有TreeView的published属性的定义,其他的都找不到,faint啊