1. 程式人生 > >如何遮蔽輸入法

如何遮蔽輸入法

MSDN中對輸入法的相關文件在About Input Method Editor系列文章裡面,可以檢視下。具體遮蔽輸入法,只允許原始的鍵盤輸入即所得,可以簡單地用下面的程式碼實現:

		hImcId = ::ImmGetContext(m_recID);

		if (hImcId) {

			::ImmAssociateContext(m_recID, NULL);

			::ImmReleaseContext(m_recID, hImcId);

			::SetFocus(m_recID);

		}
其中用於恢復IME上下文的變數hImcIdHIMC型別,m_recID為RichEdit控制元件,然後在使用完畢之後再恢復IME。程式碼如下:
		if (hImcId) {

			::ImmAssociateContext(m_recID, hImcId);

			hImcId = NULL;

		}