Delphi - Урок 6: Перетаскивание объектов

Delphi - Урок 6: Перетаскивание объектов


Все Вы были в ожидании этого. И вот, сегодня, в День Программиста свершилось. Новый урок по делфи. И, то, что я сегодня расскажу Вам обязательно понравится, уверяю.

Если Вы хотели прочитать про Новости происшествия в Молдове, то посетите сайт bessnews.ru.
Создайте новую форму, и киньте туда любой объект. У меня это будет TButton:

Delphi - Урок 6: Перетаскивание объектов


Теперь создадим событие MouseDown, для этого откройте в Object Inspector вкладку Events и два раза кликните на правую часть строчки onmousedown.

Delphi - Урок 6: Перетаскивание объектов


Откроется окно, чтобы писать код. Затем в раздел Const допишите

SC_DRAGMOVE = $F012;


А в основную программу допишите:

 releaseCapture;
  button1.Perform(WM_SYSCommand, SC_Dragmove, 0);


В итоге в коде у Вас получится что-то вроде этого:

procedure TForm2.Button1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const
  SC_DRAGMOVE = $F012;
begin
  releaseCapture;
  button1.Perform(WM_SYSCommand, SC_Dragmove, 0);
end;


А на форме при запуске можно перетаскивать объект с которым мы сотворили такие чудеса. И так можно делать с большинством объектов. Но предупреждаю, с TImage это не работает(((
P.S. Если найдете объекты, которые так же не двигаются этим способом, пишите в комментарии.
P.S.S. И да, господа программисты, с праздником Вас друзья, с 256 днем года. Чтобы программы с первого раза писались (хотя это не возможно

Delphi - Урок 6: Перетаскивание объектов

) и чтобы багов меньше было. Удачи!!!

Автор: Manzick от 2013-09-13 19:14:13   Просмотров: 2957

Теги: уроки урок