ITextInputPanel::SetInPlacePosition-Methode (peninputpanel.h)
[ITextInputPanel ist für die Verwendung in den im Abschnitt Anforderungen angegebenen Betriebssystemen verfügbar. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Verwenden Sie stattdessen IInputPanelConfiguration.
]
Positioniert den Tablet PC-Eingabebereich explizit in Bildschirmkoordinaten.
Syntax
HRESULT SetInPlacePosition(
int xPosition,
int yPosition,
CorrectionPosition position
);
Parameter
xPosition
Die horizontale x-Koordinate für die obere linke Ecke des Eingabebereichs, ohne dass ein Korrekturkamm sichtbar ist.
yPosition
Die vertikale y-Koordinate für die obere linke Ecke des Eingabebereichs, ohne dass ein Korrekturkamm sichtbar ist.
position
Die Richtung, in die der Korrekturkomb nach dem Einfügen angezeigt werden soll, wie durch die CorrectionPosition-Enumeration definiert.
Rückgabewert
Gibt false zurück, wenn der Eingabebereich geöffnet (angedockt oder schwebend) ist und nicht verschoben werden kann. Andernfalls wird true zurückgegeben.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Erfolg. |
|
Es ist ein unbekannter Fehler aufgetreten. |
Hinweise
Es gibt keine Einschränkungen hinsichtlich der Position des Eingabebereichs. Es liegt in der Verantwortung des Anwendungsentwicklers sicherzustellen, dass der Eingabebereich nicht den Bildschirm deaktiviert. Für diesen Zweck können die ITextInputPanel::InPlaceBoundingRectangle-Eigenschaft, die ITextInputPanel::P opUpCorrectionHeight-Eigenschaft und die ITextInputPanel::P opDownCorrectionHeight-Eigenschaft zusammen mit der ITextInputPanelEventSink::InPlaceSizeChanging-Methode verwendet werden.
Diese Methode ist synchron. Die Positionierung erfolgt, bevor die Methode zurückgegeben wird.
Beispiele
In diesem C++-Beispiel wird ein EN_SETFOCUS
Ereignishandler für ein Edit-Steuerelement implementiert. IDC_EDIT3
Zuerst wird überprüft, ob ein ITextInputPanel-Objekt erstellt g_pTip
wurde. Falls vorhanden, werden die Werte mehrerer Eigenschaften der ITextInputPanel-Schnittstelle gemeldet, um die Ausgabe mithilfe des TRACE-Makros zu debuggen. Außerdem wird die Position des Eingabebereichs festgelegt, indem die ITextInputPanel::SetInPlacePosition-Methode aufgerufen wird.
void CCOMTIPDlg::OnEnSetFocusEdit3()
{
if (NULL != g_pTip)
{
CorrectionMode mode;
if (SUCCEEDED(g_pTip->get_CurrentCorrectionMode(&mode)))
{
TRACE("CurrentCorrectionMode: %d\n", mode);
}
InPlaceState state;
if (SUCCEEDED(g_pTip->get_CurrentInPlaceState(&state)))
{
TRACE("CurrentInPlaceState: %d\n", state);
}
PanelInputArea area;
if (SUCCEEDED(g_pTip->get_CurrentInputArea(&area)))
{
TRACE("CurrentInputArea: %d\n", area);
}
InteractionMode iMode;
if (SUCCEEDED(g_pTip->get_CurrentInteractionMode(&iMode)))
{
TRACE("CurrentInteractionMode: %d\n", iMode);
}
RECT rect;
if (SUCCEEDED(g_pTip->get_InPlaceBoundingRectangle(&rect)))
{
TRACE("InPlaceBoundingRectangle.top: %d\n", rect.top);
TRACE("InPlaceBoundingRectangle.left: %d\n", rect.left);
TRACE("InPlaceBoundingRectangle.bottom: %d\n", rect.bottom);
TRACE("InPlaceBoundingRectangle.right: %d\n", rect.right);
}
int nHeight;
if (SUCCEEDED(g_pTip->get_PopDownCorrectionHeight(&nHeight)))
{
TRACE("PopDownCorrectionHeight: %d\n", nHeight);
}
if (SUCCEEDED(g_pTip->get_PopUpCorrectionHeight(&nHeight)))
{
TRACE("PopUpCorrectionHeight: %d\n", nHeight);
}
if (SUCCEEDED(g_pTip->SetInPlacePosition(300, 300, CorrectionPosition_Bottom)))
{
TRACE("Call to SetInPlacePosition() succeeded.\n");
}
else
{
TRACE("Call to SetInPlacePosition() failed.\n");
}
}
else
{
TRACE("ITextInputPanel object is NULL.\n");
}
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP Tablet PC Edition [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Nicht unterstützt |
Zielplattform | Windows |
Kopfzeile | peninputpanel.h |
DLL | Tiptsf.dll |