![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Контроль за перемещениями мышки. [D5, NT4]
Dim © (2001-12-24 14:23:00)Приветствую всех. Вопрос в том как узнать, что мыша покинула пределы Control"а.
Dimka Maslov (2001-12-25 09:44:00) [1]Обрабатывай сообщения CM_MOUSEENTERи CM_MOUSELEAVE. Первое сообщение передаётся контролу, когда мышь на него находит, второе - когда уходит.
type
TMouseSensitiveControl = class(TSomeControlDescendant)
private
FMouseHover: Boolean;
procedureCMMouseEnter( varMessage); messageCM_MOUSEENTER;
procedureCMMouseLeave( varMessage); messageCM_MOUSELEAVE;
public
propertyMouseHover: Boolean readFMouseHover;
end;
procedureTMouseSensitiveControl.CMMouseEnter( varMessage);
begin
FMouseHover:=True;
inherited;
end;
procedureTMouseSensitiveControl.CMMouseLeave( varMessage);
begin
FMouseHover:=False;
inherited;
end;
Sergey_n (2001-12-25 00:39:00) [2]Из справки D4
The GetCursorPos function retrieves the cursor"s position, in screen coordinates.
BOOL GetCursorPos(LPPOINTl pPoint );// address of structure for cursor position
Parameters
lpPoint
Points to a POINTstructure that receives the screen coordinates of the cursor.
Object.ScreenToClient Привести к координатам объекта
Dim (2001-12-24 15:19:00) [3]Прошу прощения за вопрос, но где взять текущие координаты.
BWG (2001-12-24 15:04:00) [4]Сравнить текущие координаты мыши и координаты Control`а