Прокрутка
Как в программе создавать полосы прокрутки во время ее выполнения. Ну как в блокноте полоса прокрутки появляется только когда текст выйдет за границы рабочей области. У меня приложение состоит из двух классов производных от CWinApp и СFrameWnd полосу прокрутки можно добавть в функции PreCreateWindow но полоса прокрутки появится сразу и будет мозолить глаза надо наверно ее как-нибудь скрыть до определенного времени. Вот как это сделать непонятно. Подскажите чего-нибудь.
Стандартное MFC-шное решение — использовать CScrollView и управлять полосами прокрутки с помощью SetScrollSizes(). Тогда они сами показываются и скрываются в зависимости от соотношения общего и видимого размеров окна.
Цитата:
Originally posted by sq_deep
Стандартное MFC-шное решение — использовать CScrollView и управлять полосами прокрутки с помощью SetScrollSizes(). Тогда они сами показываются и скрываются в зависимости от соотношения общего и видимого размеров окна.
Стандартное MFC-шное решение — использовать CScrollView и управлять полосами прокрутки с помощью SetScrollSizes(). Тогда они сами показываются и скрываются в зависимости от соотношения общего и видимого размеров окна.
СScrollView можно использовать только с архитектурой приложения документ-вид. В простом приложении замена класса CFrameWnd отвечающего за окно на CScrollView (только это решение об использовании этого класса мне пришло в голову) приведет к куче ошибок. Несмотря на то что оба класса производные CWnd.
Цитата:
Originally posted by CyberMan
Как в программе создавать полосы прокрутки во время ее выполнения. Ну как в блокноте полоса прокрутки появляется только когда текст выйдет за границы рабочей области. У меня приложение состоит из двух классов производных от CWinApp и СFrameWnd полосу прокрутки можно добавть в функции PreCreateWindow но полоса прокрутки появится сразу и будет мозолить глаза надо наверно ее как-нибудь скрыть до определенного времени. Вот как это сделать непонятно. Подскажите чего-нибудь.
Как в программе создавать полосы прокрутки во время ее выполнения. Ну как в блокноте полоса прокрутки появляется только когда текст выйдет за границы рабочей области. У меня приложение состоит из двух классов производных от CWinApp и СFrameWnd полосу прокрутки можно добавть в функции PreCreateWindow но полоса прокрутки появится сразу и будет мозолить глаза надо наверно ее как-нибудь скрыть до определенного времени. Вот как это сделать непонятно. Подскажите чего-нибудь.
в классе CFrameWnd существует метод отвечающий за прорисовку прокрутки ShowScrollBar ;)