|
if Abs(moveX)>=FMoveStep then
begin
FPointRec.LeftTop.Left:=FPointRec.LeftTop.Left+moveX;
moveX:=0;
end;
if Abs(moveY)>=FMoveStep then
begin
FPointRec.LeftTop.Top:=FPointRec.LeftTop.Top+moveY;
moveY:=0;
end;
end;
FPointRec.LeftTop.PrevP:=FPointRec.LeftTop.NextP;
AlignLeftTop;
end;
//其他点对齐左右点
procedure TDragClass.AlignLeftTop;
begin
FPointRec.LeftBottom.Left:=FPointRec.LeftTop.Left;
FPointRec.RightTop.Top:=FPointRec.LeftTop.Top;
FPointRec.LeftMid.Left:=FPointRec.LeftTop.Left;
FPointRec.LeftMid.Top:=
(FPointRec.LeftBottom.Top+FPointRec.LeftTop.Top) div 2;
FPointRec.TopMid.Top:=FPointRec.LeftTop.Top;
FPointRec.TopMid.Left:=
(FPointRec.RightTop.Left+FPointRec.LeftTop.Left) div 2;
FPointRec.RightMid.Top:=
(FPointRec.RightTop.Top+FPointRec.RightButton.Top) div 2;
FPointRec.ButtonMid.Left:=
(FPointRec.LeftBottom.Left+FPointRec.RightButton.Left) div 2;
end;
//对齐点
procedure TDragClass.AlignLeftBottom;
begin
FPointRec.LeftTop.Left:=FPointRec.LeftBottom.Left;
FPointRec.RightButton.Top:=FPointRec.LeftBottom.Top;
FPointRec.LeftMid.Left:=FPointRec.LeftTop.Left;
FPointRec.LeftMid.Top:=
(FPointRec.LeftBottom.Top+FPointRec.LeftTop.Top) div 2;
FPointRec.TopMid.Top:=FPointRec.LeftTop.Top;
FPointRec.TopMid.Left:=
(FPointRec.RightTop.Left+FPointRec.LeftTop.Left) div 2;
FPointRec.RightMid.Top:=
(FPointRec.RightTop.Top+FPointRec.RightButton.Top) div 2;
FPointRec.ButtonMid.Top:=FPointrec.LeftBottom.Top;
FPointRec.ButtonMid.Left:=
(FPointRec.LeftBottom.Left+FPointRec.RightButton.Left) div 2;
end;
//移动左底点
procedure TDragClass.MoveLeftBottomPoint;
var offsetX,offsetY:Integer;
begin
GetCursorPos(FPointRec.LeftBottom.NextP);
offsetX:=FPointRec.LeftBottom.NextP.X-FPointRec.LeftBottom.PrevP.X;
offSetY:=FPointRec.LeftBottom.NextP.Y-FPointRec.LeftBottom.PrevP.Y;
if not FisMoveStep then
begin
FPointRec.LeftBottom.Left:=FPointRec.LeftBottom.Left+offsetX;
FPointRec.LeftBottom.Top:=FPointRec.LeftBottom.Top+offsetY;
end
else begin
MoveX:=MoveX+offsetX;
MoveY:=MoveY+offsetY;
if Abs(moveX)>=FMoveStep then
begin
FPointRec.LeftBottom.Left:=FPointRec.LeftBottom.Left+moveX;
moveX:=0;
end;
if Abs(moveY)>=FMoveStep then
begin
FPointRec.LeftBottom.Top:=FPointRec.LeftBottom.Top+moveY;
movey:=0;
end;
end;
FPointRec.LeftBottom.PrevP:=FPointRec.LeftBottom.NextP;
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >> 没有相关教程
|