Мне нужен класс, при помощи которого можно дать возможность пользователю просмотреть специфический текст. Специфичность его в следующем: 1. конец строки 0x0A, в отличие от стандарта виндовс (0x0A0D или 0x0D0A, точно не помню...) 2. в тексте встречается символ 0x0D, который говорит о том, что после него до следующего такого-же символа - служебная информация. А именно - описание шрифта. Тоесть, фактически, нужно будет интерпретировать это описание, создать на основании него шрифт и весь текст дальше (пока не будет задан другой параметр) выводить этим шрифтом. В ответ хочу получить описание методов создания такого класса (на какие сообщения системы нужна нестандартная реакция? или на какие сообщения вообще надо реагировать при создании нового класса?), и общее описание действий при получении сообщения WM_PAINT этим классом. Наверно придется самому управлять полосой прокрутки?.. Заранее спасибо.
G13 читал я это... другой, более конкретный вопрос: как организовать прокрутку? мой класс создан на основе STATIC (или лучше выбрать чего другое?). Высота строк может быть разная у разных строк. Какие могут быть общие принципы организации прокрутки? Добавил стиль WS_VSCROLL, но как теперь управлять автоматически созданной полосой прокрутки?
n0name Какие конкретно сообщения нужно обрабатывать, если писать свой класс? PS: старый вопрос еще в силе: как организовать прокрутку?
Если кому интересно, пока-что я себе это представляю так: 1. Создаю Битмэп функцией CreateCompatibleBitmap, там все рисую. 2. При получении WM_PAINT копирую в ДевайсКонтекст нужный кусок БитМэпа. С прокруткой почти разобрался, вот только как копировать... должна-же быть какая-то API-функция?..
http://catch22.net/tuts/editor01.asp Конечно тебе можно сильно упростить сорц, но многое там уже описано довольно хорошо. Я про серию в целом, а не про первый урок.
Great В маке x0D. WM_HSCROLL, WM_VSCROLL. «If an application scrolls the content of the window, it must also reset the position of the scroll box by using the SetScrollPos function.»