Share via


Processing User Input from the Keyboard

Other versions of this page are also available for the following:

Windows Mobile Not SupportedWindows Embedded CE Supported

8/28/2008

The IME UI receives keyboard input from the IMM or another input mechanism, such as a software keyboard. To process user inputs with the IME conversion service, the IME UI needs to submit them to the conversion service. To send the inputs to the conversion service, IME UI must call the IImeIPoint2::InsertStringEx method. The string sent to the conversion service is put into the composition buffers as an unconverted composition string.

By default, if the characters entered by the user are Roman-alphabet characters, the conversion service will automatically convert the user input to the corresponding Hiragana characters. You can change this behavior by setting the IPCTRL_PRECONVERSION flag in the IImeIPoint2::ControlIME method.

Because the composition string is updated when the conversion service receives the user input, the IME UI must display the updated composition string for users. The IME UI can call the IImeIPoint2::UpdateContext method to request the conversion service to send back the composition buffer contents through the IImeIPointNotifySink callback function.

The following code sample shows how to process user input:

// Insert one character into the composition buffer
pIP->InsertStringEx(&wCodePoint, 1, NULL);
pIP->UpdateContext(TRUE);

See Also

Concepts

Accessing the Conversion Service
Creating a Notification Sink
Editing the Composition String
Processing User Input with Alternatives
Converting a Composition String
Creating the Candidate List
Determining the Composition String

Other Resources

Using the IImeIPoint2 Interface