Вниз
Скачать: CL | DM;

И снова Drag&Drop   Найти похожие ветки 

← →
cerber1 ©   (2004-11-29 23:45) [0]

Я понимаю что может уже тривиально, но как с помощью Drag&Drop перетаскивать Tshape по Tform?. Просьба предоставить рабочий(проверенный) код


← →
easy ©   (2004-11-30 00:04) [1]

var
 downX,downY:integer;

procedure TForm1.Shape1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 downX:= X;
 downY:= Y;
end;

procedure TForm1.Shape1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
if (ssLeft in Shift) then
 with Shape1 do begin
   Left := X-downX+Left;
   Top := Y-downY+Top;
 end;
end;


← →
VMcL ©   (2004-11-30 07:24) [2]

>>easy ©  (30.11.04 00:04) [1]

Только downX и downY лучше, наверное, объявить как поле класса TForm1.


← →
cerber1 ©   (2004-11-30 22:38) [3]

Я наверно не совсем жирными написал:
с помощью Drag&Drop
ибо предложенный способ мною уже давно реализован.


← →
cerber1 ©   (2004-11-30 22:41) [4]

И в догонку:
почему у объектов класса Tshape нет хендла?


← →
Style ©   (2004-11-30 23:15) [5]

Установи Shape1.DragMode := dmAutomatic;
и добавь на форму следующий код.

procedure TForm1.FormDragOver(Sender, Source: TObject; X, Y: Integer;
 State: TDragState; var Accept: Boolean);
begin
Accept := true;
end;

procedure TForm1.FormDragDrop(Sender, Source: TObject; X, Y: Integer);
begin
 Shape1.Left := x;
 Shape1.Top := y;
end;


> И в догонку:
> почему у объектов класса Tshape нет хендла?

потому что это не TWinControl!


← →
easy ©   (2004-12-01 00:31) [6]


> [3]

тык вам шашечки или ехать?..



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.031 c
1-1104916394
Bobby Digital
2005-01-05 12:13
2005.01.23
по центру


1-1104849219
VitGun
2005-01-04 17:33
2005.01.23
Определение числа в строке. Возможно?


1-1105446345
Viruz
2005-01-11 15:25
2005.01.23
Exception


1-1105584773
Antonn
2005-01-13 05:52
2005.01.23
Узнать ардес из интернет-ярлыка(*.url)


1-1104867226
LIMBO
2005-01-04 22:33
2005.01.23
Узнать размер файла




   Наверх