Я исправляю старый код, который использует MF C ScrollView. У меня проблема в том, что иногда вертикальная полоса прокрутки исчезает при увеличении масштаба из полностью уменьшенного, но при этом сохраняется возможность прокрутки с помощью средней кнопки мыши. В методе OnUpdate есть следующий код:
SetScrollSizes(1, sizeTotal, 60, 6);
CScrollView::OnUpdate(sender, hintL, hintP);
В стеке вызовов я вижу, что иногда метод OnUpdate также вызывается из OnSize.
Я проверил GetClientRect, чтобы убедиться, что размеры в порядке, и да, даже если sizeTotal больше ClientRect, полоса прокрутки все еще отображается.
Кто-нибудь знает, почему иногда возникают ошибки?