我来个简单的:)
procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var Node : TTreeNode;
begin
if Button= mbRight then
begin
Node := TreeView1.GetNodeAt(X,Y);
if Node lt; gt;nil then
Node.Selected := True;
end;
end;
第4、3点不明白意思。
第2点个人的一般做法是在画面上加个刷新钮,要拿最新的记录,自己刷新一下就行了,不赞成用Timer来控制的办法。
第1点写在OnMouseDown事件中,代码如下:
var
TreeNode : TTreeNode;
begin
if (Button = mbRight) then
TreeNode := TreeView1.GetNodeAt(X, Y);
TreeView1.Select(TreeNode);
至于PopupMenu,自己做一个再把TTreeView的PopupMenu属性设置一下就行了。