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

Вниз

WM_NCHITTEST   Найти похожие ветки 

 
rhf ©   (2002-08-06 18:59) [0]

Если сделать перетаскивание формы за клиентскую область (HTCLIENT менять на HTCAPTION), то она перестает реагировать на стандартные события мыши (onClick и т.п.), что вполне логично....
т.е. теперь попап-меню само не появляеться, а надо :)

можно обрабатывать WM_NCRBUTTONUP и показывать меню...
вот только как узнать, что событие произошло в клиентской области, а не на кнопке минимизации например?
координаты проверять? или есть другое решение?


 
Skier ©   (2002-08-06 19:05) [1]

>rhf
Ежели ты за клиентскую часть окно таскаешь, может
тебе и Caption не нужен ? Или он обязателен ??


 
rhf ©   (2002-08-06 20:05) [2]

а какая разница видно его или нет, проблема-то все равно останеться...........


 
Gonza ©   (2002-08-06 20:51) [3]


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

Из FAQ.

Будет и таскаться и события обрабатывать


 
DAO ©   (2002-08-06 22:10) [4]

Вот тоже кусок кода который обычно я использую! Можешь у каждого контрола на событии MouseDown написать будет ли он таскать форму или нет!

if ssLeft in Shift then
begin
ReleaseCapture;
SendMessage(Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
end;


удачи...


 
rhf ©   (2002-08-06 23:31) [5]

2 Gonza, весьма интересный magic number, с ним намного красивее чем просто с SC_MOVE... :)

всем спасибо.


 
Ученик ©   (2002-08-07 09:04) [6]

>DAO (06.08.02 22:10)
Прикольное развитие HTLEFT, HTRIGHT, HTBOTTOM, HTTOP, .... :)



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
3-60516
X-jedy
2002-07-29 17:04
2002.08.19
MySql и все, все, все...


1-60609
Cr@sh
2002-08-08 13:00
2002.08.19
Помогите примером: использование QReport без баз данных.


1-60735
Kran
2002-08-07 12:45
2002.08.19
Вопрос по FileSave Dialog


3-60508
EugeneP
2002-07-26 14:34
2002.08.19
Передача параметров ADO запросу


6-60768
budhha
2002-06-04 09:04
2002.08.19
PacketX