다음을 통해 공유


ITfThreadMgr::AssociateFocus 메서드(msctf.h)

창의 포커스를 문서 관리자 개체와 연결합니다.

구문

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

매개 변수

[in] hwnd

포커스를 연결할 창의 핸들입니다.

[in] pdimNew

포커스를 연결할 문서 관리자에 대한 포인터입니다. TSF 관리자는 개체 참조 수를 증가시키지 않습니다. 이 값은 NULL일 수 있습니다.

[out] ppdimPrev

이전에 창과 연결된 문서 관리자를 받습니다. 이전 연결이 없는 경우 NULL 을 받습니다. 이 매개 변수는 NULL일 수 없습니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

Description
S_OK
메서드를 성공적으로 수행했습니다.
E_INVALIDARG
하나 이상의 매개 변수가 잘못되었습니다.

설명

이 메서드는 애플리케이션 개발자의 편의를 위해 제공됩니다. 창의 포커스를 문서 관리자와 연결하면 연결된 창이 포커스를 받을 때 TSF 관리자가 연결된 문서 관리자와 함께 ITfThreadMgr::SetFocus 를 자동으로 호출합니다.

이 메서드는 단일 창만 단일 문서 관리자와 연결할 수 있습니다. 구현에서 여러 문서 관리자를 단일 창 또는 그 반대로 연결하는 경우 구현은 ITfThreadMgr::SetFocus 를 호출하여 포커스를 적절한 문서 관리자로 설정해야 합니다.

이전 포커스 연결을 복원하려면 동일한 창 핸들과 pdimNew에 대한 원래 호출 ppdimPrev에 반환된 값을 사용하여 이 메서드를 호출합니다. 다음은 예제입니다.


//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();
}

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 msctf.h
DLL Msctf.dll
재배포 가능 파일 Windows 2000 Professional의 TSF 1.0

참고 항목

ITfDocumentMgr

ITfThreadMgr

ITfThreadMgr::SetFocus