Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.16;
Скачать: CL | DM;

Вниз

перетаскивание объектов   Найти похожие ветки 

 
Странный...   (2003-10-04 19:17) [0]

привет! как организовать перетаскивание объектов по форме?
есть подозрение, что нужно в обработчик onmousemove добавить проверку не нажата ли левая кнопка...а вот как?


 
dataMaster ©   (2003-10-04 19:27) [1]

Кинь на форму панель и вот тебе пример:

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if ssleft in shift then
begin
ReleaseCapture;
Panel1.Perform(WM_syscommand, $F012, 0);
end;
end;


 
Странный...   (2003-10-04 23:30) [2]

спасибо, а как бы сделать тоже самое для лабелов и кнопок? =O


 
dataMaster ©   (2003-10-04 23:43) [3]

Точно так же. Только с меткой может не получиться. У нее handle отсутствует.


 
GH@ST ©   (2003-10-04 23:55) [4]

Примерно так
procedure myMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if SavButton.Down=true then exit;
if SavButton1.Down=true then exit;
Dragging:=True;
XOffset:=X;
YOffset:=Y;
PS1:=Sender as TBitBtn;
with PS1 do FocusRect:=Rect(Left, Top, Left+Width, Top+Height);
Canvas.DrawFocusRect(FocusRect);
end;

procedure myMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
if Dragging then
begin
Canvas.DrawFocusRect(FocusRect);
with FocusRect do
begin
Left:=(PS1.Left+X)-XOffset;
Top:=(PS1.Top+Y)-YOffset;
Right:=PS1.Width+Left;
Bottom:=PS1.Height+Top;
end;
Canvas.DrawFocusRect(FocusRect);
end;
end;

procedure myMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Dragging then
begin
Canvas.DrawFocusRect(FocusRect);
Dragging:=False;
with Sender as TBitBtn do
begin
Left:=(Left+X)-XOffset;
Top:=(Top+Y)-YOffset;
end;
end;
end;



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

Текущий архив: 2003.10.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
1-51337
Dionis
2003-09-27 18:11
2003.10.16
Разворачивание окна чужой формы


1-51286
Vemer
2003-10-06 16:27
2003.10.16
Красивое форматирование в QuickReport.


14-51459
Andryk
2003-09-29 14:49
2003.10.16
Пользуясь случаем хочу поздравить.


3-51066
Term
2003-09-26 10:06
2003.10.16
Какие есть методы шифрования инфы в базе


1-51240
Zheks
2003-10-03 16:06
2003.10.16
MaskEdit