ITextInputPanel ::SetInPlacePosition, méthode (peninputpanel.h)
[ITextInputPanel est disponible pour une utilisation dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il sera peut-être modifié ou indisponible dans les versions ultérieures. Utilisez plutôt IInputPanelConfiguration.
]
Positionne explicitement le panneau d’entrée tablet PC dans les coordonnées de l’écran.
Syntaxe
HRESULT SetInPlacePosition(
int xPosition,
int yPosition,
CorrectionPosition position
);
Paramètres
xPosition
Coordonnée x horizontale pour le coin supérieur gauche du panneau d’entrée, sans peigne de correction visible.
yPosition
Coordonnée y verticale pour le coin supérieur gauche du panneau d’entrée, sans peigne de correction visible.
position
Direction dans laquelle le peigne de correction post-insertion doit apparaître, comme défini par l’énumération CorrectionPosition .
Valeur retournée
Retourne false lorsque le panneau d’entrée est ouvert (ancré ou flottant) et ne peut pas être déplacé ; sinon, il retourne true.
Code de retour | Description |
---|---|
|
Réussite. |
|
Une erreur non spécifiée s'est produite. |
Remarques
Il n’existe aucune restriction quant à l’emplacement où le panneau d’entrée peut être positionné. Il incombe au développeur d’application de s’assurer que le panneau d’entrée ne s’éteint pas de l’écran. La propriété ITextInputPanel ::InPlaceBoundingRectangle, la propriété ITextInputPanel ::P opUpCorrectionHeight et la propriété ITextInputPanel ::P opDownCorrectionHeight, ainsi que la méthode ITextInputPanelEventSink ::InPlaceSizeChanging, peuvent être utilisées à cet effet.
Cette méthode est synchrone. Le positionnement se produit avant le retour de la méthode.
Exemples
Cet exemple C++ implémente un gestionnaire d’événements EN_SETFOCUS
pour un contrôle Edit, IDC_EDIT3
. Il vérifie d’abord si un objet ITextInputPanel , g_pTip
, a été créé. S’il existe, il signale les valeurs de plusieurs propriétés de l’interface ITextInputPanel pour déboguer la sortie à l’aide de la macro TRACE . Il définit également la position du panneau d’entrée en appelant la méthode 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");
}
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP Édition Tablet PC [applications de bureau uniquement] |
Serveur minimal pris en charge | Aucun pris en charge |
Plateforme cible | Windows |
En-tête | peninputpanel.h |
DLL | Tiptsf.dll |