O; CRect ScrollRectCO, 0, Scro

Автор admin Понедельник, 13 апреля 2009 11:32

O; CRect ScrollRectCO, 0, ScrollSize.cx, Scrol1 Size.су); // Область рисунка if(!Scrol1Rect.PtlnRect (point)) return; // Сохранение позиции курсора, захват мыши, установка флага перемещения m_Point0rigin = point; m_Point01d = point; SetCapture О; m_Dragging = 1; // Ограничение перемещения курсора мыши областью рисунка CIientDC.LPtoDP (&ScrollRect); // Преобразование координат CRect ViewRect; // Окно представления Изменение формы курсора 139 GetClientRect (&ViewRect); CRect IntRect; // Область пересечения рисунка и окна представления IntRect.IntersectRectC&ScrollRect, &ViewRect); ClientToScreen (&IntRect); // Преобразование координат ::ClipCursor (&IntRect); // Перемещение курсора ограничено областью пересечения // RECT Rect; // GetClientRect (&Rect); // ClientToScreen (&Rect); // ::ClipCursor (&Rect); CView::OnLButtonDown (nFlags, point); } Ниже изображено окно программы MiniPaint. В первом случае рисунок меньше окна представления, во втором — больше. Обратите внимание: когда рисунок размещен полностью внутри окна представления (рис. 6.5, a), MFC скрывает полосы прокрутки. При умень


Комментарии закрыты.