Мышка в клетке
Очень интересным примером является ограничение свободы перемещения мышки. Посмотрите на следующий код:
RECT r;
r.left=10;
r.top=10;
r.bottom=100;
r.right=100;
CiipCursor(r);
Определим переменную r типа RECT. Это структура, которая состоит из четырех числовых переменных, описывающих прямоугольник. Переменные структуры имеют следующие имена: left, top, bottom и right (левая, верхняя, нижняя и правая координаты прямоугольника).
В следующих четырех строчках мы присваиваем этим переменным значения, определяя тем самым прямоугольную область. Затем вызываем функцию ClipCursor, которая и офаничивает движение курсора мышки указанным прямоугольником.
Попробуйте выполнить следующий код:
RECT r;
r.left=0;
r.top=0;
r.bottom=1;
r.right=1;
CiipCursor(r);
Здесь размер области передвижения равен 1 пикселу по горизонтали и вертикали, поэтому мышка окажется запертой в клетке.