Метод ITextStoreAnchor::GetAnchorFromPoint (texttor.h)
Метод ITextStoreAnchor::GetAnchorFromPoint преобразует точку в координатах экрана в привязку, расположенную в соответствующем расположении.
Синтаксис
HRESULT GetAnchorFromPoint(
[in] TsViewCookie vcView,
[in] const POINT *ptScreen,
[in] DWORD dwFlags,
[out] IAnchor **ppaSite
);
Параметры
[in] vcView
Указывает представление контекста.
[in] ptScreen
Указатель на структуру POINT с экранными координатами точки.
[in] dwFlags
Задает возвращаемую позицию привязки на основе экранных координат точки относительно ограничивающего символьного прямоугольника. По умолчанию возвращенная позиция привязки — это ограничивающий знак, содержащий экранные координаты точки. Если точка находится за пределами ограничивающего поля символов, метод возвращает значение NULL или TF_E_INVALIDPOINT. Ниже приведены другие битовые флаги для этого параметра.
Битовые флаги можно объединять.
[out] ppaSite
Указатель на объект привязки в расположении, соответствующем координатам экрана ptScreen.
Возвращаемое значение
Этот метод может возвращать одно из этих значений.
Значение | Описание |
---|---|
|
Метод выполнен успешно. |
|
Сбой метода. |
|
Один или несколько входных параметров недопустимы. |
|
Попытка создать экземпляр привязки в указанном расположении завершилась сбоем. |
|
Параметр ptScreen не находится в ограничивающем прямоугольнике какого-либо символа. |
|
Приложение еще не вычислило макет текста. |
Комментарии
Координаты экрана в точке 1 приводят к тому, что смещение (положение символа) привязки ppaSite по умолчанию равно 0 или если параметру dwFlags задано значение GXFPF_NEAREST так как координаты экрана точки 1 находятся внутри ограничивающего символа поля позиции символа 0. Если для параметра dwFlags задано значение GXFPF_ROUND_NEAREST для точки 1, смещение привязки равно 1, так как координаты экрана точки 1 ближе всего к позиции диапазона 1. Позиция диапазона 1 — начальная позиция диапазона символа 1.Для экранных координат точки 2 метод возвращает TF_E_INVALIDPOINT по умолчанию или значение , если параметру dwFlags присвоено значение GXFPF_NEAREST так как координаты экрана точки 2 находятся вне ограничивающего символьного поля. Если параметру dwFlags задано значение GXFPF_ROUND_NEAREST, то координаты экрана в точке 2 приводят к тому, что смещение привязки равно 1, так как ближайшее положение символа к координатам экрана точки 2 — это позиция символа 1.
Пункт 1
- По умолчанию — смещение привязки = 0 — точка координат экрана находится внутри ограничивающего поля символа позиции символа 0.
- -- GXFPF_ROUND_NEARESTсмещение привязки = 1 --Координаты экрана точки ближе всего к позиции диапазона 1, которая является начальной позицией диапазона позиции символа 1.
- -- GXFPF_NEARESTсмещение привязки = 0 --Поведение по умолчанию происходит, так как точка находится в пределах ограничивающего поля символа позиции символа 0.
- По умолчанию — hr = TF_E_INVALIDPOINT — экранные координаты точки находятся за пределами ограничивающего символьного поля.
- GXFPF_ROUND_NEAREST- hr = TF_E_INVALIDPOINT --Поведение по умолчанию происходит из-за того, что экранные координаты точки находятся за пределами ограничивающего символьного прямоугольника.
- GXFPF_NEAREST-- смещение привязки = 1 --Ближайшее положение символа к координатам экрана точки — Позиция символа 1.
Требования
Минимальная версия клиента | Windows 2000 Профессиональная [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows 2000 Server [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | textstor.h |
DLL | Msctf.dll |
Распространяемые компоненты | TSF 1.0 в Windows 2000 Профессиональная |
См. также раздел
ITfContextView::GetRangeFromPoint