chertovski
chertovski

Reputation: 41

Windows IME: custom Korean virtual keyboard

I have problem with Korean Windows IME. I am designing a virtual (screen/software) keyboard for a piece of embedded software. I rely on Windows IME and it seemed to work fine for Japanese and Chinese languages. It also works perfectly with Korean if I am using a physical keyboard.

But when I click a virtual keyboard button, the mouse events seem to interfere with IME and basically just cancel the composition. WM_IME_ENDCOMPOSITION message fires every time the mouse button is clicked. As a result I can only get separate Korean symbols without an ability to combine them into words.

Is anyone aware of any way to manage this effect? How does the default Windows software keyboard bypass it? For a list of reasons we cannot use default Windows soft keyboard in our product and need to design our own one.

Thank you.

Upvotes: 4

Views: 1259

Answers (1)

user1884718
user1884718

Reputation: 21

The composition ending is caused by keyboard message VK_ProcessKey. You can see this message after you clicked the virtual key by the spy++.

Consider to hook a function used to filter this message by Windows API SetWindowsHookEx.

In my case, this way can work as we expected.

Upvotes: 2

Related Questions