После выбора шрифта его атрибуты
После выбора шрифта его атрибуты копируются в структуру cf типа CHARFORMAT. Адрес этой структуры передается в качестве последнего параметра функции SendMessage, посылающей окну органа управления Rich Edit сообщение EM_SETCHARFORMAT :
SendMessage(hwndEdit, EM_SETCHARFORMAT, SCF_SELECTION, (LPARAM)&cf);
После установки нового шрифта обработчик освобождает полученный ранее контекст отображения.
Format/Paragraph/Left
Для изменения оформления параграфа наше приложение посылает окну органа управления Rich Edit сообщение EM_SETPARAFORMAT :
pf.cbSize = sizeof(pf); pf.dwMask = PFM_ALIGNMENT; pf.wAlignment = PFA_LEFT; SendMessage(hwndEdit, EM_SETPARAFORMAT, 0, (LPARAM)&pf);
Параметр wParam этого сообщения не используется и должен быть равен нулю. Через параметр lParam передается адрес предварительно заполненной структуры типа PARAFORMAT:
lParam = (LPARAM)(PARAFORMAT FAR *)lpFmt;
Структура PARAFORMAT определена следующим образом:
typedef struct _paraformat { UINT cbSize; // размер структуры в байтах _WPAD _wPad1; // зарезервировано DWORD dwMask; // поле масок WORD wNumbering; // порядок нумерации WORD wReserved; // зарезервировано LONG dxStartIndent; // отступ для первой строки параграфа LONG dxRightIndent; // отступ от правой границы листа LONG dxOffset; // отступ второй и следующих // строк параграфа WORD wAlignment; // выравнивание параграфа SHORT cTabCount; // количество символов табуляции LONG rgxTabs[MAX_TAB_STOPS];// массив абсолютных позиций // для символов табуляции } PARAFORMAT;
Поле маски dwMask определяет, какие из остальных полей структуры PARAFORMAT будут использованы для установки формата параграфа. В этом поле могут находиться следующие значения:
Значение маски |
Поля структуры PARAFORMAT |
PFM_ALIGNMENT |
wAlignment |
PFM_NUMBERING |
wNumbering |
PFM_OFFSET |
dxOffset |
PFM_OFFSETINDENT |
dxStartIndent |
PFM_RIGHTINDENT |
dxRightIndent |
PFM_STARTINDENT |
dxStartIndent |
PFM_TABSTOPS |
cTabStobs и rgxTabStops |
Для поля wNumbering вы можете указать нулевое значение или константу PFN_BULLET .
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий