Нарисуйте отформатированный форматированный текст - PullRequest
1 голос
/ 22 февраля 2010

С учетом пользовательского элемента управления CCustomWnd, который имеет собственный метод OnPaint, каков самый простой способ, которым CCustomWnd :: OnPaint может отображать содержимое CRichEditCtrl с тем же форматированием?

Чтобы уточнить, в другом месте моего диалогового окна / окна находится CRichEditCtrl. У меня есть свой пользовательский элемент управления, который выполняет кучу пользовательских рисунков, включая рисование содержимого элемента управления редактирования. В настоящее время форматирование не сохраняется, теперь нужно (не все, а цвет / оформление).

Пользовательский элемент управления не может быть заменен или существенно переписан. По сути, учитывая CDC и CRichEditCtrl, как мне отформатировать отформатированный текст из последнего, используя первый?

Ответы [ 2 ]

2 голосов
/ 22 февраля 2010

Богатые элементы управления редактированием поддерживают несколько сообщений (EM_FORMATRANGE и EM_DISPLAYBAND), предназначенных главным образом для печати. Я никогда не пробовал, но не могу придумать ни одной реальной причины, по которой они требуют , чтобы DC ссылались на принтер вместо окна на экране. В таком случае вы должны иметь возможность отправлять сообщения в существующий элемент управления rich edit, сообщая ему, что необходимо отобразить правильную часть содержимого в выбранный прямоугольник в вашем пользовательском элементе управления.

1 голос
/ 24 февраля 2010

Разве вы не можете сделать «снимок экрана» (GetDC (), BitBlt () для памяти DC) элемента управления rich edit и отобразить его в другом месте?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...