прокрутка и прорисовка окна предстовления

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
Aram
Сообщения: 18
Зарегистрирован: 16 апр 2007, 14:07

18 июн 2007, 21:50

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

В окне представления я рисую фигуры и координаты вершин этих фигур я сохраняю в массиве, а также рисую сетку и делаю привязку вершин фигур к сетке.
Мне необходимо, чтоб при загрузке моего приложения вертикальные и горизонтальные полосы прокрутки были в середине и соответственно центр моего холста тоже был бы в середине окна представления т.к начало координат у моего приложения - центр холста.
В OnScroll() я написал Invalidate(), а прорисовку сетки и созданной фигуры я осуществляю в OnPaint(), но при прокрутке экран моргает, и созданная фигура не перемещается. Очень важно чтоб координаты вершин созданной фигуры записывались в массив относительно холста, а не относительно видимой области. И еще как мне сделать чтоб размер моего рисунка не изменялся при печати.
Заранее благодарю,
Аватара пользователя
Romeo
Сообщения: 3091
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

19 июн 2007, 14:08

а ты учитываешь положение скроллеров при прорисовке? если не учитываешь, то понятно, почему картинка мигает, но не прорисовывается.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Ответить