Visual C++ для начинающих - Пример графической программы с оптимизацией

ОГЛАВЛЕНИЕ

 

5. Пример графической программы с оптимизацией 

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

Во многих книжках работа с графикой описывается следующим образом:

  • Все графические функции описывабтся в OnPaint().
  • Далее в другом месте программы вызываются функции Invalidate, InvalidateRect или InvalidateRgn.
  • Такой тип построения программы не совсем верен, так как в таком случае обычно всё мигает и это нервирует.
  • Есть немного другой способ работы с графикой и ниже он будет описан.

Этот метод заключается в следующем :

  • Вся графика рисуется в какой-то функции F().
  • По событию таймера или по другим событиям вызывается F().
  • Эдементы графики рисуются сначала в памяти, а потом выводятся на экран.
  • Предворительные расчёты можно вести как в F() так и в других частях программы.
  • Функция OnPaint() содержит копию функции F(), это нужно только для перерисовки окна при изменении его положения или размера.