Поделиться через


Метод ITfContext::GetSelection (msctf.h)

Получает выделенный фрагмент в документе.

Синтаксис

HRESULT GetSelection(
  [in]  TfEditCookie ec,
  [in]  ULONG        ulIndex,
  [in]  ULONG        ulCount,
  [out] TF_SELECTION *pSelection,
  [out] ULONG        *pcFetched
);

Параметры

[in] ec

Содержит файл cookie редактирования, который идентифицирует сеанс редактирования. Это значение, переданное в ITfEditSession::D oEditSession.

[in] ulIndex

Указывает отсчитываемый от нуля индекс первого получаемого фрагмента. Используйте TF_DEFAULT_SELECTION, чтобы получить выбор по умолчанию. Если используется TF_DEFAULT_SELECTION, получается только один выбор.

[in] ulCount

Задает максимальное количество выбранных значений.

[out] pSelection

Массив TF_SELECTION структур, получающих данные для каждого выделенного фрагмента. Массив должен содержать по крайней мере элементы ulCount .

[out] pcFetched

Указатель на значение ULONG, которое получает количество полученных выбранных значений.

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

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

Значение Описание
S_OK
Метод выполнен успешно.
TF_E_NOSELECTION
Документ не имеет выделения.
TF_E_NOLOCK
Недопустимый файл cookie в ec .
TF_E_DISCONNECTED
Контекст не находится в стеке документов.
E_INVALIDARG
Один или несколько параметров недопустимы.
E_OUTOFMEMORY
Произошел сбой выделения памяти.

Комментарии

Выделение — это выделенный диапазон текста или точка вставки, если диапазон пуст, который идентифицирует область фокусировки пользователя в документе.

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

Как правило, контекст поддерживает только один выбор. Однако контекст может поддерживать несколько одновременных выборов. Этот метод можно использовать для получения нескольких вариантов выбора.

Примеры


HRESULT         hr;
TF_SELECTION    tfSel;
ULONG           uFetched;

//Obtain the default selection. 
hr = pContext->GetSelection(ec, TF_DEFAULT_SELECTION, 1, &tfSel, &uFetched);
if(SUCCEEDED(hr) && (uFetched > 0))
{
    //Work with the selection. 
    
    //Release the selection range object. 
    tfSel.range->Release();
}

Требования

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

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

Интерфейс ITfContext, ITfEditSession::D oEditSession, структура TF_SELECTION, ITfContext::SetSelection