Вниз
Скачать: CL | DM;

Событие движения мыши по окну, в том числе по контролам на ней   Найти похожие ветки 

 
Aldor_   (2005-02-01 21:42) [0]

Form.OnMouseMove по понятным причинам не вызывается если на форме есть другие контролы и мышь над ними.
В голову пришел только один способ осуществления сабжа: отлов WM_NCHITTEST.


procedure OnNCHitTest(var Msg: TMessage); message WM_NCHITTEST;

...

procedure TForm1.OnNCHitTest(var Msg: TMessage);
var
 Point: TPoint;
begin
 Point.X := Msg.lParam and $0000FFFF;
 Point.Y := Msg.lParam shr 16;
 Point := ScreenToClient(Point);
 //Do smth...
 Msg.Result := DefWindowProc(Handle, Msg.Msg, Msg.WParam, msg.LParam);
end;


 Корректно ли это? Можно ли сделать тоже самое только средствами  Delphi, не затрагивая WinAPI?


 
Aldor_   (2005-02-01 23:44) [1]

Сорри, не в тот форум. Перенесите, пожалуйста.


 
Чапаев ©   (2005-02-02 10:02) [2]

SetCapture()?


 
Aldor_   (2005-02-02 21:51) [3]

Дык все-равно ведь API. Может есть сто-нить типа TForm.MousePreview: Boolean.


 
Aldor_   (2005-02-03 11:42) [4]

Up



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

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



Память: 0.45 MB
Время: 0.023 c
6-1102245699
dr Tr0jan
2004-12-05 14:21
2005.02.20
Как подружить прокси и winsock?


1-1107781856
mariya_mezenceva
2005-02-07 16:10
2005.02.20
vk_insert


1-1107717138
Tu134
2005-02-06 22:12
2005.02.20
Как мышкой изменять размеры Panel в run-time?


9-1096978011
П7
2004-10-05 16:06
2005.02.20
Звуковой движок


9-1100334142
mozartw
2004-11-13 11:22
2005.02.20
Как сотрудничают 3dmax и compiler




   Наверх