Delphi 在鼠标位置旁边显示组件

Delphi 在鼠标位置旁边显示组件,delphi,Delphi,这是为了学习 我尝试在那里显示一个组件(标签),在那里我用鼠标右键单击 如何在我用鼠标右键单击的窗体周围移动控件?将OnMouseUp事件处理程序分配给窗体,并将控件的Left和Top属性设置为提供的X-Y坐标,该坐标相对于窗体的客户端区域: procedure TMyForm.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if Button = m

这是为了学习

我尝试在那里显示一个组件(标签),在那里我用鼠标右键单击


如何在我用鼠标右键单击的窗体周围移动控件?

OnMouseUp
事件处理程序分配给窗体,并将控件的
Left
Top
属性设置为提供的X-Y坐标,该坐标相对于窗体的客户端区域:

procedure TMyForm.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if Button = mbRight then
  begin
    Label1.Left := X;
    Label1.Top := Y;
  end;
end;

如果控件不是窗体本身的直接子控件,而是另一个控件(如
TPanel
)的子控件,则将
OnMouseUp
事件处理程序指定给父控件。

控件是绘制文本的重量级方法。为什么不直接画文本呢?除此之外,你被困在什么地方?您已经知道如何做了吗?这是用于设计时还是用于运行时?鼠标光标下的(类型)控件是否会产生影响?