Метод ITfRange::AdjustForInsert (msctf.h)

Метод ITfRange::AdjustForInsert расширяет или сжимает диапазон текста для настройки вставки текста.

Синтаксис

HRESULT AdjustForInsert(
  [in]  TfEditCookie ec,
  [in]  ULONG        cchInsert,
  [out] BOOL         *pfInsertOk
);

Параметры

[in] ec

Измените файл cookie, полученный из ITfDocumentMgr::CreateContext или ITfEditSession::D oEditSession.

[in] cchInsert

Число символов вставленного текста. Это число используется в будущем для ITfRange::SetText. Если число символов неизвестно, можно использовать значение 0.

[out] pfInsertOk

Указатель на флаг, указывающий, будет ли владелец контекста принимать (TRUE) или отклонять (FALSE) вставку.

Возвращаемое значение

Этот метод может возвращать одно из этих значений.

Значение Описание
S_OK
Метод выполнен успешно.
E_FAIL
Сбой метода.
E_INVALIDARG
Один или несколько параметров являются недопустимыми.
E_NOTIMPL
Приложению не удалось заменить выделенный фрагмент.
TF_E_NOLOCK
Значение в параметре EC является недопустимым файлом cookie или у вызывающего объекта нет блокировки только для чтения.

Комментарии

Этот метод следует использовать для подготовки диапазона для инициации новой композиции перед началом редактирования. Его следует использовать только в том случае, если текст не вставляется в текущий выделенный фрагмент. ITFInsertAtSelection:InsertTextAtSelection или ITfInsertAtSelection::InsertEmbeddedAtSelection — это правильные методы, которые следует использовать при вставке текста в текущий выделенный фрагмент.

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

Этот метод не требуется при изменении существующей композиции. Допускается вызывать ITfRange::SetText напрямую, чтобы изменить текст, ранее введенный вызывающим элементом.

Если при выходе *pfInsertOk задано значение FALSE, вызов ITfRange::SetText или ITfRange::InsertEmbedded с этим диапазоном, скорее всего, завершится ошибкой. В противном случае для *pfInsertOk будет задано значение TRUE, а начальную или конечную привязку диапазона можно изменить по усмотрению владельца контекста.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header msctf.h
DLL Msctf.dll
Распространяемые компоненты TSF 1.0 в Windows 2000 Профессиональная

См. также раздел

ITFInsertAtSelection:InsertTextAtSelection

ITfDocumentMgr::CreateContext

ITfEditSession::D oEditSession

ITfInsertAtSelection::InsertEmbeddedAtSelection

ITfRange

ITfRange::InsertEmbedded

ITfRange::SetText

Текстовые хранилища