OnDraw() - это виртуальная функция в классе CView, которая вызывается каркасом при обработке WM_PAINT и при выводе на печать.
Не только в классе CView, а так же COleConrol и ещё каких то. В MSDN написано, что вызов WM_PAINTа заканчивается вызовом OnDraw - для прорисовки контрола (COleControl), но если контрол не активен, то OnPaint не вызывается и идёт прямой вызов OnDraw (если только я правильно перевёл
).
В OnDraw прорисовываются контролы, т.е. например при создании ActiveX или переделки каких то обычны контролов (кнопок и т.д.)именно эту ф-цию и приходится расписывать.
Перерисовка окон (вызов WM_PAINT'а) происходит при: создании, изменении размеров, перемещении, минимизации или ввостановлении, отображении данных из открываемого файла, и перемещении, изменении, или выборе части отображаемых данных.