프로그래밍 강의/C++

IME Composition Window 위치 바꾸기

wnsrn3436 2013. 2. 6. 13:25
void set_composition_window(int xpos, int ypos)
{
    if(hIMC=ImmGetContext(hWnd))
    {
        COMPOSITIONFORM cf;
        cf.dwStyle=CFS_POINT;
        cf.ptCurrentPos.x=xpos;
        cf.ptCurrentPos.y=ypos;
        ImmSetCompositionWindow(hIMC, &cf);
        ImmReleaseContext(hWnd, hIMC);
    }
}

 

한글 조합 상자의 위치를 바꿔줍니다.

단, 한글 조합 상자의 윈도우는 계속 생겨나고 파괴되기 때문에 수시로 바꿔주어야 합니다.

 

아예 박스 윈도우가 생성되지 않게 하시려면,

IME 메시지 중 WM_IME_STARTCOMPOSITION 메시지가 오면 메시지를 넘기지 않고 return 0; 을 박아주시면 됩니다.

Comments