2015-07-26 5 views
0

с помощью Visual Studio 2013 сообщество и Windows 7Пункт Обоснуйте выравнивание не работает

левый, правый и центральный Align работают хорошо, но PFA_JUSTIFY и PFA_FULL_INTERWORD нет. Оба они выравниваются влево. По моему пониманию, Justify должен вставлять пробелы в строки, чтобы абзац заполнял доступную площадь экрана, то есть каждая строка в абзаце должна начинаться с левой стороны и заканчиваться с правой стороны.

MSDN говорит, что PFA_JUSTIFY не работает и действует как left-align в версии Richedit 2. Я читал, что PFA_FULL_INTERWORD доступен в версии richedit 3 (не помню, где).

Я проверил richedit.h и обнаружил, что PFA_JUSTIFY и PFA_FULL_INTERWORD оба определены как постоянное значение 4. Является ли это ошибкой или они являются синонимами?

Мне нужно Обозначить для некоторых приложений.

Что мне нужно делать?

ответ

1

Прошло много времени с тех пор, как я использовал это, но RichEdit 3 выполнит полное обоснование с помощью PFA_FULL_INTERWORD, но только если «расширенные параметры типографии» были включены с другим вызовом: если предположить, что язык C-типа, убедитесь, что вы звоните

SendMessage(hRichEditWnd,EM_SETTYPOGRAPHYOPTIONS, 
    TO_ADVANCEDTYPOGRAPHY,TO_ADVANCEDTYPOGRAPHY); 

при инициализации элемента управления RichEdit. Дополнительную информацию см. В статье MSDN на странице EM_SETTYPOGRAPHYOPTIONS.

+0

Спасибо. Вы бы подумали, что Microsoft будет иметь эту информацию на своей странице MSDN для стиля 'PFA_FULL_INTERWORD' для описания структуры PARAFORMAT2 ... – c00000fd

+0

Это сделало бы слишком легким ... – DavidK

 Смежные вопросы

  • Нет связанных вопросов^_^