Metodo ITextInputPanel::SetInPlacePosition (peninputpanel.h)

[ITextInputPanel è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. Usare invece IInputPanelConfiguration.

]

Posiziona in modo esplicito il pannello di input del TABLET PC nelle coordinate dello schermo.

Sintassi

HRESULT SetInPlacePosition(
  int                xPosition,
  int                yPosition,
  CorrectionPosition position
);

Parametri

xPosition

Coordinata x orizzontale per l'angolo superiore sinistro del pannello di input, senza visibile la barra di correzione.

yPosition

Coordinata y verticale per l'angolo superiore sinistro del pannello di input, senza visibile la barra di correzione.

position

La direzione in cui deve essere visualizzata la barra di correzione post inserimento, come definito dall'enumerazione CorrectionPosition .

Valore restituito

Restituisce false quando il pannello di input è aperto (ancorato o mobile) e non può essere spostato; in caso contrario, restituisce true.

Codice restituito Descrizione
S_OK
Operazione completata.
E_FAIL
Si è verificato un errore non specificato.

Commenti

Nota In Windows 7 la chiamata a SetInPlacePosition non userà più il parametro CorrectionPosition .
 
Prendere in considerazione l'altezza del pettine di correzione quando si decide dove posizionare il pannello di input per mantenere il pannello di input e la correzione sullo schermo. La direzione specificata nel parametro position esegue l'override della direzione impostata usando la proprietà ITextInputPanel::P referredInPlaceDirection.

Non esistono restrizioni per la posizione del pannello di input. È responsabilità dello sviluppatore dell'applicazione assicurarsi che il pannello di input non venga disattivato dallo schermo. È possibile utilizzare la proprietà ITextInputPanel::InPlaceBoundingRectangle, ITextInputPanel::P opUpCorrectionHeight e ITextInputPanel::P opDownCorrectionHeight, insieme al metodo ITextInputPanelEventSink::InPlaceSizeChanging.

Questo metodo è asincrono. Il posizionamento si verifica prima della restituzione del metodo.

Esempio

Questo esempio C++ implementa un EN_SETFOCUS gestore eventi per un controllo Edit, IDC_EDIT3. Verifica innanzitutto se è stato creato un oggetto ITextInputPanel , g_pTip, . Se esistente, segnala i valori di diverse proprietà dell'interfaccia ITextInputPanel per eseguire il debug dell'output usando la macro TRACE . Imposta anche la posizione del pannello di input chiamando il metodo ITextInputPanel::SetInPlacePosition.

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");
    }
}

Requisiti

Requisito Valore
Client minimo supportato Windows XP Tablet PC Edition [solo app desktop]
Server minimo supportato Nessuno supportato
Piattaforma di destinazione Windows
Intestazione peninputpanel.h
DLL Tiptsf.dll

Vedi anche

Interfaccia ITextInputPanel

Metodo ITextInputPanel::SetInPlaceHoverTargetPosition

Metodo ITextInputPanel::SetInPlaceVisibility