Delphi 中LPtpDP,DPtoLP的用法
我有一个Form1,在Form1上有一个TreeView1,我想在用户右击我的TreeView1的某一个结点时时能弹出一个菜单,对这个结点进行相关的操作。
1。开始时我把TTreeView的RightClickSelect设为True,可是在我右击了一个结点之后TTreeView的Selected属性并指向这个结点。
2.后来我想用TTreeView的OnMouseDown实现,在OnMouseDown中我用如下代码
var
par:array[0..1] of TPoint;
begin
...
pa[0].x:=x;pa[0].y:=y;
if LPtoDP(TreeView1.Canvas.Handle,pa,1) then
popupmenu1.Pop(pa[0].x,pa[0].y);
end;
怪就怪在调用了LPtoDP(TreeView1.Canvas.Handle,pa,1)之后,pa[0]这个point
的值没有任何变化。这是为何。