Freigeben über


ITextStoreACP::GetACPFromPoint-Methode (textstor.h)

Die ITextStoreACP::GetACPFromPoint-Methode konvertiert einen Punkt in Bildschirmkoordinaten in eine Anwendungszeichenposition.

Syntax

HRESULT GetACPFromPoint(
  [in]  TsViewCookie vcView,
  [in]  const POINT  *ptScreen,
  [in]  DWORD        dwFlags,
  [out] LONG         *pacp
);

Parameter

[in] vcView

Gibt die Kontextansicht an.

[in] ptScreen

Zeiger auf die POINT-Struktur mit den Bildschirmkoordinaten des Punkts.

[in] dwFlags

Gibt die Zeichenposition an, die basierend auf den Bildschirmkoordinaten des Punkts relativ zu einem Zeichenbegrenzungsfeld zurückgegeben werden soll. Standardmäßig ist die zurückgegebene Zeichenposition das Zeichenbegrenzungsfeld, das die Bildschirmkoordinaten des Punkts enthält. Wenn sich der Punkt außerhalb eines Zeichenbegrenzungsrahmens befindet, gibt die Methode NULL oder TF_E_INVALIDPOINT zurück. Andere Bitflags für diesen Parameter sind wie folgt.

Die Bitflags können kombiniert werden.

Wert Bedeutung
GXFPF_ROUND_NEAREST
Wenn die Bildschirmkoordinaten des Punkts in einem Zeichenbegrenzungsfeld enthalten sind, ist die zurückgegebene Zeichenposition der begrenzungsenden Kante, die den Bildschirmkoordinaten des Punkts am nächsten kommt.
GXFPF_NEAREST
Wenn die Bildschirmkoordinaten des Punkts nicht in einem Zeichenbegrenzungsfeld enthalten sind, wird die nächstgelegene Zeichenposition zurückgegeben.

[out] pacp

Empfängt die Zeichenposition, die den Bildschirmkoordinaten des Punkts entspricht.

Rückgabewert

Diese Methode kann einen dieser Werte zurückgeben.

Wert BESCHREIBUNG
S_OK
Die Methode war erfolgreich.
TS_E_INVALIDPOINT
Der ptScreen-Parameter befindet sich nicht innerhalb des Begrenzungsrahmens eines Zeichens.
TS_E_NOLAYOUT
Die Anwendung hat kein Textlayout berechnet.

Hinweise

Punkt 1 befindet sich im Zeichenbegrenzungsfeld, und Punkt 2 befindet sich außerhalb des Zeichenbindungsrahmens. Die Bildschirmkoordinaten des Punkts 1 führen dazu, dass der Pacp-Parameter standardmäßig 0 ist, oder wenn der dwFlags-Parameter auf GXFPF_NEAREST festgelegt ist, da sich die Bildschirmkoordinaten des Punkts 1 im Zeichenbegrenzungsfeld der Zeichenposition 0 befinden. Wenn der dwFlags-Parameter für Punkt 1 auf GXFPF_ROUND_NEAREST festgelegt ist, ist der pacp-Parameter 1, da die Bildschirmkoordinaten des Punkts 1 der Bereichsposition 1 am nächsten sind. Bereichsposition 1 ist die Startbereichsposition der Zeichenposition 1.

Für die Punkt-2-Bildschirmkoordinaten gibt die -Methode standardmäßig TF_E_INVALIDPOINT zurück, oder wenn der dwFlags-Parameter auf GXFPF_NEAREST festgelegt ist, da sich die Bildschirmkoordinaten des Punkts 2 außerhalb eines Zeichengrenzenfelds befinden. Wenn der dwFlags-Parameter auf GXFPF_ROUND_NEAREST festgelegt ist, wird der Pacp-Parameter durch die Bildschirmkoordinaten des Punkts 2 auf 1 festgelegt, da die nächstgelegene Zeichenposition zu den Bildschirmkoordinaten des Punkts 2 das Zeichen 1 ist.

Punkt 1

  • Default-- pacp = 0 --Der Bildschirmkoordinatenpunkt befindet sich im Zeichenbegrenzungsfeld der Zeichenposition 0.
  • -- GXFPF_ROUND_NEARESTpacp = 1 --Die Bildschirmkoordinaten des Punkts sind der Bereichsposition 1 am nächsten, was die Startbereichsposition von Zeichenposition 1 ist.
  • -- GXFPF_NEARESTpacp = 0 --Das Standardverhalten tritt auf, weil sich der Punkt innerhalb des Zeichengrenzenfelds von Zeichenposition 0 befindet.
Punkt 2
  • Default-- hr = TF_E_INVALIDPOINT --Die Bildschirmkoordinaten des Punkts sind außerhalb eines Zeichenbegrenzungsrahmens.
  • GXFPF_ROUND_NEAREST-- hr = TF_E_INVALIDPOINT --Das Standardverhalten tritt auf, weil sich die Bildschirmkoordinaten des Punkts außerhalb eines Zeichengrenzenfelds befinden.
  • GXFPF_NEAREST-- pacp = 1 --Die nächstgelegene Zeichenposition zu den Bildschirmkoordinaten des Punkts ist Zeichenposition 1.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile textstor.h
DLL Msctf.dll
Verteilbare Komponente TSF 1.0 unter Windows 2000 Professional

Weitere Informationen

GXFPF_*-Konstanten

Itextstoreacp

ITfContextOwner::GetACPFromPoint

ITfContextView::GetRangeFromPoint

Manager-Rückgabewerte

TsViewCookie