如何将一个对象的位置随着鼠标的位置的改变而改变

zhaojia2001 2005-11-03 09:54:08
我在编写的过程当中,我想把一个对象(比如ttreeview对象的位置随着鼠标点击的位置而改变)
...全文
109 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
konhon 2005-11-04
  • 打赏
  • 举报
回复
比如ttreeview对象的位置随着鼠标点击的位置而改变
---------------------------------------------------------------------
你是说点击窗口,然后让TreeView移动到点击的地方去吗?那加入这个事件吧!
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
TreeView1.Left:=X;
TreeView1.Top:=Y;
end;
clasj 2005-11-03
  • 打赏
  • 举报
回复
比如ttreeview对象的位置随着鼠标点击的位置而改变
---------------------------------------------------------------------
你是说点击窗口,然后让TreeView移动到点击的地方去吗?那加入这个事件吧!
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
TreeView1.Left:=X;
TreeView1.Top:=Y;
end;
clasj 2005-11-03
  • 打赏
  • 举报
回复
var
old_x, old_y: integer;

procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
old_x:=X;
old_y:=Y;
end;

procedure TForm1.TreeView1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if ssLeft in Shift then
begin
TreeView1.Left:=TreeView1.Left+(X-old_x);
TreeView1.Top:=TreeView1.Top+(Y-old_y);
end;
end;

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧