Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.007 c
6-83229
Vilux
2003-11-23 12:14
2004.01.26
Компонент для работы по протоколу HTTPS


1-83196
Andersen
2004-01-14 16:17
2004.01.26
Как сделать так, чтобы второе окно не появлялось


14-83242
Qwet
2004-01-05 17:44
2004.01.26
Книги по Паскалю


1-83167
zioza
2004-01-12 10:51
2004.01.26
Можно ли сделать форму прозрачной а компоненты на ней нет


9-83093
Alexsey Orlov
2003-07-09 21:08
2004.01.26
Помогите заблудившемуся в дебрях Canvas a 8(




   Наверх