Partager via


ITfThreadMgr::AssociateFocus, méthode (msctf.h)

Associe le focus d’une fenêtre à un objet gestionnaire de documents.

Syntaxe

HRESULT AssociateFocus(
  [in]  HWND           hwnd,
  [in]  ITfDocumentMgr *pdimNew,
  [out] ITfDocumentMgr **ppdimPrev
);

Paramètres

[in] hwnd

Handle de la fenêtre à laquelle associer le focus.

[in] pdimNew

Pointeur vers le gestionnaire de documents à associer au focus. Le gestionnaire TSF n’incrémente pas le nombre de références d’objets. Cette valeur peut être NULL.

[out] ppdimPrev

Reçoit le gestionnaire de documents précédemment associé à la fenêtre. Reçoit NULL s’il n’y a pas d’association précédente. Ce paramètre ne peut pas être NULL.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Valeur Description
S_OK
La méthode a réussi.
E_INVALIDARG
Un ou plusieurs paramètres ne sont pas valides.

Notes

Cette méthode est fournie à titre pratique pour le développeur d’applications. L’association du focus d’une fenêtre à un gestionnaire de documents amène le gestionnaire TSF à appeler automatiquement ITfThreadMgr::SetFocus avec le gestionnaire de documents associé lorsque la fenêtre associée reçoit le focus.

Cette méthode ne peut associer qu’une seule fenêtre à un seul gestionnaire de documents. Si l’implémentation associe plusieurs gestionnaires de documents à une seule fenêtre, ou l’inverse, l’implémentation doit appeler ITfThreadMgr::SetFocus pour définir le focus sur le gestionnaire de documents approprié.

Pour restaurer l’association précédente du focus, appelez cette méthode avec le même handle de fenêtre et la valeur retournée dans l’appel d’origine ppdimPrev pour pdimNew. Voici un exemple.


//associate the focus for m_hwnd with m_pDocMgr 
pThreadMgr->AssociateFocus(m_hwnd, m_pDocMgr, &m_pPrevDocMgr);



//Restore the original focus association. 
ITfDocumentMgr *pTempDocMgr = NULL;

pThreadMgr->AssociateFocus(m_hwnd, m_pPrevDocMgr, &pTempDocMgr);

if(pTempDocMgr)
{
    pTempDocMgr->Release();
}
    
if(m_pPrevDocMgr)
{
    m_pPrevDocMgr->Release();
}

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête msctf.h
DLL Msctf.dll
Composant redistribuable TSF 1.0 sur Windows 2000 Professionnel

Voir aussi

ITfDocumentMgr

ITfThreadMgr

ITfThreadMgr::SetFocus