Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 10.09.2008, 17:37
Аватар для Blackster
Blackster Blackster вне форума
Новичок
 
Регистрация: 07.09.2008
Сообщения: 55
Репутация: 10
По умолчанию форма

привет.как сделать так чтобы можно было мышкой передвинуть форму взяв ёё в любом месте?
Ответить с цитированием
  #2  
Старый 10.09.2008, 17:48
Аватар для :S.p.a.m.
:S.p.a.m. :S.p.a.m. вне форума
Активный
 
Регистрация: 04.05.2008
Сообщения: 260
Репутация: 15
По умолчанию

http://codelab.3dn.ru/publ/2-1-0-50
все просто!
Ответить с цитированием
  #3  
Старый 10.09.2008, 17:52
Аватар для Blackster
Blackster Blackster вне форума
Новичок
 
Регистрация: 07.09.2008
Сообщения: 55
Репутация: 10
По умолчанию

извени но не пашет
Ответить с цитированием
  #4  
Старый 10.09.2008, 17:56
Аватар для :S.p.a.m.
:S.p.a.m. :S.p.a.m. вне форума
Активный
 
Регистрация: 04.05.2008
Сообщения: 260
Репутация: 15
По умолчанию

незнаю но у меня все работает!
вот:
Вложения
Тип файла: rar Новая папка.rar (2.6 Кбайт, 4 просмотров)
Ответить с цитированием
  #5  
Старый 10.09.2008, 18:08
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Код:
procedure TCallAlertForm.FormMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  FIsMove := True;
  FDragPoint := Point(X , Y );
end;

procedure TCallAlertForm.FormMouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Integer);
begin
  If FIsMove Then
    Begin
      Self.Left := Self.Left + x - FDragPoint.X;
      Self.Top := Self.Top  + y - FDragPoint.y;
    End;
end;

procedure TCallAlertForm.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  FIsMove := False;
end;

+ в форме объявляешь 2 переменные (внутри класса формы!!!):

Код:
    FIsMove : Boolean;
    FDragPoint : TPoint;

Двигает форму, которая вообще сдизайнена без заголовка.

ЗЫ. Кажется, я полняй код этой формы уже когда-то сюда постил. Люди, перед тем, как спрашивать, делайте поиск по форуму!!!
Ответить с цитированием
  #6  
Старый 10.09.2008, 22:42
жекаизжека жекаизжека вне форума
Начинающий
 
Регистрация: 10.09.2008
Сообщения: 193
Репутация: 10
По умолчанию

у меня ругаеться вот на это "TCallAlertForm."
Ответить с цитированием
  #7  
Старый 10.09.2008, 22:52
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Естественно, ругается. У тебя-то форма подругому называется. Через инспектор объектов сделай нужные обработчики и скопируй туда код из соответсвующих, приведенных в моем посте.
Ответить с цитированием
  #8  
Старый 14.09.2008, 11:59
Аватар для Casper-Hacker
Casper-Hacker Casper-Hacker вне форума
Начинающий
 
Регистрация: 19.05.2008
Сообщения: 147
Версия Delphi: x
Репутация: 15
Радость

Цитата:
Сообщение от Blackster
привет.как сделать так чтобы можно было мышкой передвинуть форму взяв ёё в любом месте?
Код:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
Const SC_DragMove=$F012;
begin
    ReleaseCapture;
    perform (WM_SysCommand,SC_DragMove,0);
end;

Последний раз редактировалось Admin, 14.09.2008 в 13:16.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:05.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025