B bigroom Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-10 #2 你是指用程序控制LABEL移动,还是直接用鼠标拖动一类的操作移动?
S sam_lai Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-10 #3 Ctrl + 方向键 或者 用鼠标 难道你不是这个意思?
H hua8hua Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-10 #4 设计时:Ctrl + 方向键 或者 用鼠标 运行时:label.left 和 lable.top
N night Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-10 #8 我说的是在运行时就像移动edit控件一样移动label; 但是他们的移动方法好像不一样!
X _xiaofeng Unregistered / Unconfirmed GUEST, unregistred user! 2002-07-10 #9 鼠标移动如下。关注Ctrl + 方向键[] procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin downx:=x; //记录鼠标原来的坐标值 downy:=y; end; procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin If ssleft in shift then begin //按下鼠标左键拖动form1 Label1.left:=Label1.left+x-downx; Label1.top:=Label1.top+y-downy; end; end;
鼠标移动如下。关注Ctrl + 方向键[] procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin downx:=x; //记录鼠标原来的坐标值 downy:=y; end; procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin If ssleft in shift then begin //按下鼠标左键拖动form1 Label1.left:=Label1.left+x-downx; Label1.top:=Label1.top+y-downy; end; end;