Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перетаскивание формы [D5, D6, Win2k]


LiNkS ©   (2002-03-25 09:06:00) 

Имеется форма без заголовка, т.е. передвигать нельзя. Но я нашел в инете код для возможности двигать форму за любое место. Но получилось так, многие компоненты (рисунки, панели) как-будто уходят под форуму - т.е. их видно, но действия с ними проимзвести нельзя (вроде нажатия мышью и т.п.). За них тоже можно перетаскивать форму...
Подскажите как избавиться от этого или выделить область для перемещения формы!


-=CrazyFish=-   (2002-03-25 10:50:00) [1]

Пишешь следующий обработчик и таскаешь форму за её поле.

procedure TForm1.MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
const SC_DragMove = $F012;
begin
ReleaseCapture;
perform(WM_SysCommand, SC_DragMove, 0);
end;

Если такой же обработчик повесить на панель, то будешь таскать за панель.


Юрий Федоров   (2002-03-25 09:16:00) [2]

Смотри Help по WM_NCHITTEST


Наверх

Титульная страница Поиск, карта сайта Написать письмо