WinPro logo. Перейти на сайт www.winpro.narod.ru

Пример ограничения курсора



В этом примере перемещение курсора ограничивается окном приложения, а затем установленные границы отменяются. Функция GetClipCursor сохраняет область, в которой курсор мог перемещаться, а функция ClipCursor ограничивает, а затем восстанавливает перемещение курсора.
RECT rcClip;           // новая область для ClipCursor
RECT rcOldClip;        // предыдущая область для ClipCursor
 
// Сохранение области, в которой мог перемещаться курсор.
 
GetClipCursor(&rcOldClip); 
 
// Получение размеров окна приложения. 
 
GetWindowRect(hwnd, &rcClip); 
 
// Ограничение перемещения курсора в пределах окна приложения.
 
ClipCursor(&rcClip); 
 
   // 
   // Обработка ввода при ограниченном курсоре.
   // 
 
// Восстановление предыдущей области перемещения курсора.
 
ClipCursor(&rcOldClip);

Помните, что в системе возможно существование только одного курсора. Поэтому, перед передачей управления другому окну, необходимо освободить курсор от установленных ограничений на перемещение.

Hosted by uCoz