Windows 8 下程式啟動觸發中文輸入法啟動問題

xBase/clipper
回覆文章
admin
Site Admin
文章: 50
註冊時間: 2014-09-23, 10:58

Windows 8 下程式啟動觸發中文輸入法啟動問題

文章 admin »

fwh 開發程式於 Windows 8/8.1 下啟動時,會觸發中文輸入法,每次要輸入英數老是忘記又要切換一次,
找了些資料,發現 Win7 之後的輸入法已經不太一樣,不是先前的 IME 而是 TSF,
一些常用來呼叫的 IME 有些水土不服沒有效用了!!

後來找到一組程式碼翻譯後測試可以正常切回英數模式了!

c code:

代碼: 選擇全部

#include <imm.h>
HB_FUNC( SETIMEMODE)
{
 HWND hWnd = (HWND) hb_parnl( 1 );
 BOOL bHan = hb_parl(2);
 HIMC hImc;
 hImc = ImmGetContext(hWnd);

 ImmSetOpenStatus(hImc,bHan);
 ImmReleaseContext(hWnd,hImc );
}
於主程式 bInit 內呼叫此函數:
prg code:

代碼: 選擇全部

  SetIMEMode(oWin:hWnd,.F.)
如此程式一啟動就是英數模式了!
ps.雖然都還是呼叫 IME,但是,確有效!
line ID: ssbbstw
WeChat ID: ssbbstw
回覆文章