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

Вниз

Перемещение окна за TFrame   Найти похожие ветки 

 
alexnmsk   (2004-01-15 10:58) [0]

Как переместить окно не за заголовок, если на нем раположен TFrame.
Обрабатываю сообщение wm_NCHitTest в Frame
procedure TMainForm.WMNCHitTest(var M: TWMNCHitTest);
begin
inherited;
SendMessage(Form1.Handle,wm_NCHitTest,0,(m.YPos shl 16)+m.XPos);
end;

а в обработке события wm_NCHitTest в форме делаю M.Result:= htCaption. К сожалению, нажатие на мышь при этом не передается..


 
alexnmsk   (2004-01-15 11:50) [1]

Неужели никто так и не поможет? :(


 
MV   (2004-01-15 12:25) [2]

А если отлавливать события мыши через объект Application?


 
TUser ©   (2004-01-15 12:29) [3]

В обработчике писать
M.result := htCaption.
С формой точно работает, наверное и с фреймом прокатит.


 
wicked ©   (2004-01-15 12:41) [4]

прокатит только в том случае, если сообщение обрабатывает форма... другим потомкам TWinControl WM_NCHITTEST (sic!) тоже передается, но если его там обрабатывать, то мы добьемся только того, что мышью можно будет двигать именно те контролы...
т. е., за фрейм форму двигать не получится через обработку WM_NCHITTEST, нужно искать другие способы...


 
alexnmsk   (2004-01-15 13:39) [5]

Может через WM_NCLBUTTONDOWN?


 
alexnmsk   (2004-01-15 13:53) [6]

Странно.... Пытаюсь написать обработчик для WM_NCLBUTTONDOWN

procedure WMNCLBUTTONDOWN(var M: TWMNCLBUTTONDOWN); message WM_NCLBUTTONDOWN;

Так вот эта процедура ДАЖЕ НЕ ВЫЗЫВАЕТСЯ!! Ни для фрейма, ни для окна!



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
1-83158
pserg
2004-01-14 23:58
2004.01.26
Поиск фрагмента текста в файлах MSWord


1-83175
New
2004-01-15 15:04
2004.01.26
OpenDialog


4-83298
Demetrius2003
2003-11-18 12:36
2004.01.26
Shell_TrayWnd


3-83097
L.V
2003-12-27 12:10
2004.01.26
Опции TExecuteOption


14-83255
asdqwer
2004-01-05 11:26
2004.01.26
Ещё графовый алгоритм