C 獲取輸入法名字,調整輸入法候選框位置

2021-07-29 21:20:37 字數 785 閱讀 8756

可以根據視窗布局或hkl獲取輸入名字,windows訊息wm_inputlangchange的lparam就是hkl

qstring getimenamefromhkl(hkl hkl) ;

immgetimefilename(hkl, buf, buf_len - 2);

qstring result = qstring::fromstdwstring(buf);

return result;

}qstring getimenamefromwnd(hwnd hwnd)

調整輸入法候選框位置

himc himc = immgetcontext(hwnd);

candidateform cand;

cand.dwindex = 0

;cand.dwstyle = cfs_candidatepos;

cand.ptcurrentpos

.x = 0

;cand.ptcurrentpos

.y = 0

;immsetcandidatewindow(himc, &cand);

immreleasecontext(hwnd, himc);

包含標頭檔案

#include 

#pragma comment(lib, "imm32.lib")

支援win7及以下系統,win8及以上的系統可能用的新輸入法框架

c 檢測中英輸入法 用C 控制當前輸入法

如何獲取系統中所有的輸入法,以及如何根據輸入語言及其他特殊要求選擇特定的輸入法,下面我以兩段程式片斷再加以說明。1 遍歷系統中所有的輸入法,可以用以下程式片斷 foreach inputlanguage lang in inputlanguage.installedinputlanguages th...

c 關閉中文輸入法 開啟中文輸入法

輸入法的禁用和啟用有兩種方式 在控制項的操作級別中,能對輸入法有影響的只有輸入型控制項,例如textbox,combobox 等 控制性 xaml 塊方式 inputmethod.preferredimestate on 啟用輸入法 inputmethod.preferredimeconversio...

C 輸入法切換類

using system using system.runtime.interopservices using system.collections using microsoft.win32 namespace screen 設定當前ime,使用方法ime.setimename 中文 簡體 拼音加...