Расширенные изменения

В этом разделе содержатся сведения о элементах программирования, используемых с расширенными элементами управления редактированием. Элемент управления расширенными изменениями позволяет пользователю вводить, изменять, печатать и сохранять текст. Текст можно назначить символьным и абзацным форматированием и включать внедренные объекты объектной модели компонентов (COM).

Так как элементы управления расширенными изменениями поддерживают почти все сообщения и коды уведомлений, используемые с многостроными элементами управления редактированием, приложения, которые уже используют элементы управления редактированием, можно легко изменить, чтобы использовать элементы управления расширенными изменениями.

Общие сведения

Раздел Содержимое
Сведения о элементах управления расширенными изменениями В этом разделе представлены элементы управления расширенными изменениями.
Использование элементов управления расширенными изменениями В этом разделе содержатся разделы, демонстрирующие создание и использование элементов управления расширенными изменениями.

Функции

Раздел Содержимое
AutoCorrectProc Функция AutoCorrectProc — это определяемая приложением функция обратного вызова, используемая с сообщением EM_SETAUTOCORRECTPROC.
EditStreamCallback Функция EditStreamCallback — это определяемая приложением функция обратного вызова, используемая с EM_STREAMIN и EM_STREAMOUT сообщениями. Он используется для передачи потока данных в элемент управления расширенными изменениями или из него.
EditWordBreakProcEx Функция EditWordBreakProcEx — это определяемая приложением функция обратного вызова, используемая с сообщением EM_SETWORDBREAKPROCEX. Он определяет индекс символов разрыва слова или класс символов и флаги разбиения слов символов в указанном тексте.
ДефисироватьProc Функция HyphenateProc — это определяемая приложением функция обратного вызова, используемая с сообщением EM_SETHYPHENATEINFO. Он определяет, как выполняется дефисирование в элементе управления Microsoft Rich Edit.

Интерфейсы

Раздел Содержимое
IRichEditOle Интерфейс IRichEditOle предоставляет функции COM полнофункционированного элемента управления редактирования. Интерфейс можно получить, отправив сообщение EM_GETOLEINTERFACE .
IRichEditOleCallback Интерфейс IRichEditOleCallback используется элементом управления редактирования форматированного текста для получения сведений, связанных с OLE, из своего клиента. Клиент управления с расширенными возможностями правки отвечает за реализацию этого интерфейса и назначение его элементу управления с помощью сообщения EM_SETOLECALLBACK .

Сообщения

Раздел Содержимое
EM_AUTOURLDETECT Включает или отключает автоматическое обнаружение URL-адресов с помощью элемента управления расширенными изменениями.
EM_CANPASTE Определяет, может ли элемент управления расширенными изменениями вставить указанный формат буфера обмена.
EM_CANREDO Определяет, существуют ли действия в очереди повтора элемента управления.
EM_DISPLAYBAND Отображает часть содержимого элемента управления расширенными изменениями, как ранее отформатировано для устройства с помощью сообщения EM_FORMATRANGE.
EM_EXGETSEL Извлекает начальные и конечные позиции выделенного фрагмента в элементе управления расширенными изменениями.
EM_EXLIMITTEXT Задает верхний предел количества текста, который пользователь может ввести или вставить в элемент управления расширенными изменениями.
EM_EXLINEFROMCHAR Определяет, какая строка содержит указанный символ в элементе управления расширенными изменениями.
EM_EXSETSEL Выбирает диапазон символов или COM-объектов в элементе управления Rich Edit.
EM_FINDTEXT Находит текст в элементе управления расширенными изменениями.
EM_FINDTEXTEX Находит текст в элементе управления расширенными изменениями.
EM_FINDTEXTEXW Находит текст Юникода в элементе управления расширенными изменениями.
EM_FINDTEXTW Находит текст Юникода в элементе управления расширенными изменениями.
EM_FINDWORDBREAK Находит следующий разрыв слова до или после указанной позиции символа или извлекает сведения о символе в этой позиции.
EM_FORMATRANGE Форматирует диапазон текста в элементе управления расширенными изменениями для определенного устройства.
EM_GETAUTOURLDETECT Указывает, включена ли функция автоматического обнаружения URL-адресов в элементе управления расширенными изменениями.
EM_GEТБ IDIOPTIONS Указывает текущее состояние двунаправленных параметров в элементе управления расширенными изменениями.
EM_GETCHARFORMAT Определяет форматирование символов в элементе управления расширенными изменениями.
EM_GETCTFMODEBIAS Возвращает значения предвзятости в режиме text Services Framework (TSF) для элемента управления Rich Edit.
EM_GETCTFOPENSTATUS Определяет, открыта ли или закрыта клавиатура TSF.
EM_GETEDITSTYLE Извлекает текущие флаги стиля редактирования.
EM_GETEVENTMASK Извлекает маску событий для элемента управления расширенными изменениями. Маска события указывает, какие коды уведомлений элемент управления отправляет в родительское окно.
EM_GETHYPHENATEINFO Получает сведения о дефисации элемента управления Rich Edit.
EM_GETIMECOLOR Извлекает цвет композиции редактора методов ввода (IME). Это сообщение доступно только в азиатских версиях операционной системы.
EM_GETIMECOMPMODE Возвращает текущий режим IME для элемента управления расширенными изменениями.
EM_GETIMECOMPTEXT Возвращает текст композиции IME.
EM_GETIMEMODEBIAS Получает предвзятость режима IME для элемента управления Rich Edit.
EM_GETIMEOPTIONS Извлекает текущие параметры IME. Это сообщение доступно только в азиатских версиях операционной системы.
EM_GETIMEPROPERTY Возвращает свойство и возможности IME, связанного с текущим языковым стандартом ввода.
EM_GETLANGOPTIONS Получает параметры параметра элемента управления с расширенными возможностями редактирования для поддержки IME и азиатского языка.
EM_GETOLEINTERFACE Извлекает объект IRichEditOle , который клиент может использовать для доступа к функциям COM элемента управления с расширенными возможностями редактирования.
EM_GETOPTIONS Извлекает расширенные параметры управления редактированием.
EM_GETPAGEROTATE Устарело. Возвращает текстовый макет для элемента управления Rich Edit.
EM_GETPARAFORMAT Извлекает форматирование абзаца текущего выделенного фрагмента в элементе управления расширенными изменениями.
EM_GETPUNCTUATION Возвращает текущие знаки препинания для элемента управления расширенными изменениями. Это сообщение доступно только в азиатских версиях операционной системы.
EM_GETREDONAME Извлекает тип следующего действия, если таковой есть, в очереди повторного редактирования элемента управления с расширенными возможностями.
EM_GETSCROLLPOS Получает текущую позицию прокрутки элемента управления редактирования.
EM_GETSELTEXT Извлекает выделенный в данный момент текст в элементе управления расширенными изменениями.
EM_GETTEXTEX Возвращает весь текст из элемента управления расширенными изменениями в любой нужной базе кода.
EM_GETTEXTLENGTHEX Вычисляет длину текста различными способами. Обычно он вызывается перед созданием буфера для получения текста из элемента управления.
EM_GETTEXTMODE Возвращает текущий текстовый режим и отменяет уровень элемента управления расширенными изменениями.
EM_GETTEXTRANGE Извлекает указанный диапазон символов из элемента управления расширенными изменениями.
EM_GETTYPOGRAPHYOPTIONS Извлекает текущее состояние параметров типографии элемента управления расширенными изменениями.
EM_GETUNDONAME Microsoft Rich Edit 2.0 и более поздних версий: извлекает тип следующего действия отмены, если таковой есть.
Microsoft Rich Edit 1.0: это сообщение не поддерживается.
EM_GETWORDBREAKPROCEX Извлекает адрес зарегистрированной в настоящее время расширенной процедуры разбиения слов.
EM_GETWORDWRAPMODE Возвращает текущие параметры упаковки слов и разбиения слов для элемента управления расширенными изменениями. Это сообщение доступно только в азиатских версиях операционной системы.
EM_GETZOOM Получает текущее соотношение масштаба, которое всегда составляет от 1/64 до 64.
EM_HIDESELECTION Скрытие или отображение выделения в элементе управления расширенными изменениями.
EM_ISIME Определяет, является ли текущий языковой стандарт входных данных языковым стандартом Восточной Азии.
EM_PASTESPECIAL Вставляет определенный формат буфера обмена в элемент управления расширенными изменениями.
EM_RECONVERSION Вызывает диалоговое окно рековерверсии IME.
EM_REDO Переопределяет следующее действие в очереди повторного входа элемента управления.
EM_REQUESTRESIZE Принудительно отправляет элемент управления расширенными изменениями для отправки кода уведомления EN_REQUESTRESIZE в родительское окно.
EM_SELECTIONTYPE Определяет тип выбора для элемента управления расширенными изменениями.
EM_SEТБ IDIOPTIONS Задает текущее состояние двунаправленных параметров в элементе управления расширенными изменениями.
EM_SEТБ KGNDCOLOR Задает цвет фона для элемента управления расширенными изменениями.
EM_SETCHARFORMAT Задает форматирование символов в элементе управления расширенными изменениями.
EM_SETCTFMODEBIAS Задайте предвзятость режима TSF для элемента управления Rich Edit.
EM_SETCTFOPENSTATUS Открывает или закрывает клавиатуру TSF.
EM_SETEDITSTYLE Задает текущие флаги стиля редактирования.
EM_SETEVENTMASK Задает маску событий для элемента управления расширенными изменениями. Маска события указывает, какие коды уведомлений элемент управления отправляет в родительское окно.
EM_SETFONTSIZE Задает размер шрифта для выделенного текста.
EM_SETHYPHENATEINFO Задает способ, который элемент управления Rich Edit выполняет дефисацию.
EM_SETIMECOLOR Задает цвет композиции IME. Это сообщение доступно только в азиатских версиях операционной системы.
EM_SETIMEMODEBIAS Задает предвзятость режима IME для элемента управления Rich Edit.
EM_SETIMEOPTIONS Задает параметры IME. Это сообщение доступно только в азиатских версиях операционной системы.
EM_SETLANGOPTIONS Задает параметры поддержки IME и азиатского языка в элементе управления расширенными изменениями.
EM_SETOLECALLBACK Предоставляет расширенный элемент управления редактированием объект IRichEditOleCallback , который используется элементом управления для получения ресурсов и сведений, связанных с OLE, от клиента.
EM_SETOPTIONS Задает параметры для элемента управления расширенными изменениями.
EM_SETPAGEROTATE Устарело. Задает текстовый макет элемента управления Rich Edit.
EM_SETPALETTE Изменяет палитру, которая использует расширенные изменения для его окна отображения.
EM_SETPARAFORMAT Задает форматирование абзаца для текущего выбора в элементе управления расширенными изменениями.
EM_SETPUNCTUATION Задает знаки препинания для элемента управления расширенными изменениями. Это сообщение доступно только в азиатских версиях операционной системы.
EM_SETSCROLLPOS Указывает элементу управления полного редактирования прокручиваться до определенной точки.
EM_SETTARGETDEVICE Задает целевое устройство и ширину линии, используемую для форматирования "то, что вы видите" (WYSIWYG) в элементе управления расширенными изменениями.
EM_SETTEXTEX Объединяет функциональные возможности WM_SETTEXT и EM_REPLACESEL и добавляет возможность задать текст с помощью кодовой страницы и использовать форматированный текст или обычный текст.
EM_SETTEXTMODE Задает текстовый режим или отменить уровень элемента управления расширенными изменениями. Сообщение завершается ошибкой, если элемент управления содержит любой текст.
EM_SETTYPOGRAPHYOPTIONS Задает текущее состояние параметров типографии элемента управления расширенными изменениями.
EM_SETUNDOLIMIT Задает максимальное количество действий, которые могут храниться в очереди отмены.
EM_SETWORDBREAKPROCEX Задает расширенную процедуру разбиения слов.
EM_SETWORDWRAPMODE Задает параметры упаковки и разбиения слов для элемента управления расширенными изменениями. Это сообщение доступно только в азиатских версиях операционной системы.
EM_SETZOOM Задает коэффициент масштабирования в любом месте от 1/64 до 64.
EM_SHOWSCROLLBAR Отображает или скрывает одну из полос прокрутки в окне текстового узла.
EM_STOPGROUPTYPING Запрещает элементу управления собирать дополнительные действия ввода в текущее действие отмены. В элементе управления сохраняется следующее действие ввода (если таковые есть) в новое действие в очереди отмены.
EM_STREAMIN Заменяет содержимое элемента управления расширенными изменениями потоком данных, предоставляемым приложением, определяемой функцией обратного вызова EditStreamCallback .
EM_STREAMOUT Приводит к тому, что элемент управления расширенными изменениями передает содержимое в приложение, определяемую функцией обратного вызова EditStreamCallback . Затем функция обратного вызова может записывать поток данных в файл или любое другое расположение, которое он выбирает.

Notifications

Раздел Содержимое
EN_ALIGNLTR Уведомляет родительское окно элемента управления с расширенными изменениями о том, что направление абзаца изменилось слева направо. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_COMMAND.
EN_ALIGNRTL Уведомляет родительское окно элемента управления с расширенными изменениями о том, что направление абзаца изменилось справа налево. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_COMMAND.
EN_CORRECTTEXT Уведомляет родительское окно элемента управления с расширенными изменениями о том, что произошел жест SYV_CORRECT, что дает родительскому окну возможность отменить исправление текста. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_DRAGDROPDONE Уведомляет родительское окно элемента управления с расширенными изменениями о завершении операции перетаскивания. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_DROPFILES Уведомляет родительское окно элемента управления с расширенными изменениями о попытке пользователя удалить файлы в элемент управления. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY при получении сообщения WM_DROPFILES.
EN_IMECHANGE Уведомляет родительский элемент управления с расширенными изменениями о том, что состояние преобразования IME изменилось. Это сообщение доступно только для версий операционной системы на азиатском языке. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_COMMAND.
EN_LINK Уведомляет родительское окно элемента управления с расширенными изменениями, когда пользователь щелкает мышь или когда указатель мыши находится на тексте с CFE_LINK эффектом. Родительское окно элемента управления получает этот код уведомления через сообщение WM_NOTIFY.
EN_LOWFIRTF Уведомляет родительское окно элемента управления rich edit элемента управления Rich Edit о том, что был получен неподдерживаемый формат форматированного текста (RTF) ключевое слово. Элемент управления Rich Edit отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_MSGFILTER Уведомляет родительское окно элемента управления с расширенным изменением события клавиатуры или мыши в элементе управления. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_OBJECTPOSITIONS Уведомляет родительское окно элемента управления с расширенными изменениями при чтении элемента управления в объектах. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_OLEOPFAILED Уведомляет родительское окно элемента управления с расширенными изменениями о сбое действия пользователя в объекте COM. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_PROTECTED Уведомляет родительское окно элемента управления с расширенными изменениями о том, что пользователь принимает действие, которое изменит защищенный диапазон текста. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_REQUESTRESIZE Уведомляет родительское окно элемента управления о том, что содержимое элемента управления меньше или больше размера окна элемента управления. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_SAVECпакет интерфейса пользователя BOARD Уведомляет родительское окно элемента управления с расширенными изменениями о закрытии элемента управления, а буфер обмена содержит сведения. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_SELCHANGE Уведомляет родительское окно элемента управления с расширенными изменениями о том, что текущий выбор изменен. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.
EN_STOPNOUNDO Уведомляет родительское окно элемента управления с расширенными изменениями о том, что произошло действие, для которого элемент управления не может выделить достаточно памяти для поддержания состояния отмены. Элемент управления расширенными изменениями отправляет этот код уведомления в виде сообщения WM_NOTIFY.

Структуры

Раздел Содержимое
BIDIOPTIONS Содержит двунаправленные сведения о расширенном элементе управления редактированием. Эта структура используется сообщениями EM_GEТБ IDIOPTIONS и EM_SEТБ IDIOPTIONS для получения и задания двунаправленной информации для элемента управления.
CHARFORMAT Содержит сведения о форматировании символов в элементе управления расширенными изменениями.
CHARFORMAT2 Содержит сведения о форматировании символов в элементе управления расширенными изменениями. CHARFORMAT2 — это расширение Microsoft Rich Edit 2.0 структуры CHARFORMAT. Microsoft Rich Edit 2.0 позволяет использовать любую структуру с EM_GETCHARFORMAT и EM_SETCHARFORMAT сообщениями.
CHARRANGE Задает диапазон символов в элементе управления расширенными изменениями.
COMPCOLOR Содержит параметры цвета для строки композиции.
EDITSTREAM Содержит сведения, которые приложение передает в элемент управления расширенными изменениями в сообщении EM_STREAMIN или EM_STREAMOUT. Элемент управления расширенными изменениями использует сведения для передачи потока данных в элемент управления или из него.
ENCORRECTTEXT Содержит сведения о исправлении выделенного текста.
ENDROPFILES Содержит сведения, связанные с кодом уведомления EN_DROPFILES. Элемент управления расширенными изменениями отправляет этот код уведомления при получении сообщения WM_DROPFILES .
ENLINK Содержит сведения о коде уведомлений EN_LINK из элемента управления расширенными изменениями.
ENLOWFIRTF Содержит сведения о неподдерживаемой ключевое слово RTF в элементе управления Rich Edit.
ENOLEOPFAILED Содержит сведения о неудачной операции.
ENPROTECTED Содержит сведения, связанные с кодом уведомления EN_PROTECTED . Элемент управления расширенными изменениями отправляет это уведомление, когда пользователь пытается изменить защищенный текст.
ENSAVEC пакет интерфейса пользователя BOARD Содержит сведения об объектах и тексте в буфере обмена.
FINDTEXT Содержит сведения об операции поиска в расширенном элементе управления редактированием. Эта структура используется с сообщением EM_FINDTEXT .
FINDTEXTEX Содержит сведения о тексте для поиска в элементе управления расширенными возможностями редактирования. Эта структура используется с сообщением EM_FINDTEXTEX .
FORMATRANGE Содержит сведения, которые элемент управления расширенными изменениями использует для форматирования выходных данных для конкретного устройства. Эта структура используется с сообщением EM_FORMATRANGE .
GETTEXTEX Содержит сведения об операции для получения текста из элемента управления расширенными изменениями. Эта структура передается в wParam в сообщении EM_GETTEXTEX.
GETTEXTLENGTHEX Содержит сведения о том, как следует вычислять длину текста элемента управления расширенными изменениями. Эта структура передается в wParam в сообщении EM_GETTEXTLENGTHEX.
ДЕФИСАТЬINFO Содержит сведения о дефисации в элементе управления Rich Edit.
HYPHRESULT Содержит сведения о результатах дефисации в элементе управления Rich Edit.
IMECOMPTEXT Содержит сведения о тексте композиции в элементе управления Rich Edit.
MSGFILTER Содержит сведения о событии клавиатуры или мыши. Элемент управления расширенными изменениями отправляет эту структуру в родительское окно в рамках кода уведомления EN_MSGFILTER , что позволяет родительскому элементу изменить сообщение или запретить его обработку.
OBJECTPOSITIONS Содержит сведения о положении объекта.
PARAFORMAT Содержит сведения о атрибутах форматирования абзаца в элементе управления расширенными изменениями. Эта структура используется с EM_GETPARAFORMAT и EM_SETPARAFORMAT сообщениями.
PARAFORMAT2 Содержит сведения о атрибутах форматирования абзаца в элементе управления расширенными изменениями.
ЗНАКИ ПРЕПИНАНИЯ Содержит сведения о препинаниях, используемых в элементе управления расширенными изменениями.
REOBJECT Содержит сведения об объекте.
REPASTESPECIAL Содержит сведения, определяющие, должен ли отображаться аспект вставленного объекта на основе содержимого объекта или значка, представляющего объект.
REQRESIZE Содержит запрошенный размер элемента управления расширенными изменениями. Элемент управления расширенными изменениями отправляет эту структуру в родительское окно в рамках кода уведомления EN_REQUESTRESIZE .
SELCHANGE Содержит сведения, связанные с кодом уведомлений EN_SELCHANGE. Элемент управления расширенными изменениями отправляет это уведомление в родительское окно при изменении текущего выбора.
SETTEXTEX Указывает, какая кодовая страница (если есть) используется в параметре текста, заменяет ли текст все текст в элементе управления или просто выделение, а также сохраняется ли состояние отмены.
TEXTRANGE Получает диапазон текста из элемента управления расширенными изменениями. Эта структура заполняется сообщением EM_GETTEXTRANGE . Буфер, на который указывает элемент lpstrText , должен быть достаточно большим, чтобы получить все символы и завершающий символ NULL.

Константы

Раздел Содержимое
Флаги маски событий с расширенными изменениями Маска события указывает, какие коды уведомлений кодирует элемент управления расширенными изменениями, отправляется в родительское окно.
Стили элементов управления "Расширенные изменения" Описывает стили окон, уникальные для элементов управления расширенными возможностями редактирования.