線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:3287
推到 Plurk!
推到 Facebook!

如何取得 IME 狀態?

缺席
herbert2
尊榮會員


發表:58
回覆:640
積分:894
註冊:2004-04-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2011-12-01 15:13:28 IP:202.39.xxx.xxx 訂閱
在 Win 2K Run 時, Form->OnKeyUp 補捉 VK_RETURN 轉成 TAB 功能, 對使用『新注音』、『新倉頡』的 TWinControl 如 TDBEdit、TEdit 等,
沒有任何異常.
但在 Win XP Run 時, 當選完字按 Enter, 會跳至下一 TabOrder 的 TDBEdit 等元件, 而 Text 便會變成『?』或『 』.
目前以判斷 TDBEdit->ImeName 暫時處理, 當該元件是使用『新注音』或『新倉頡』時,便不將 VK_RETURN 轉成 TAB 功能解決.

如果能讀取到 Windows IME 的狀態, 判斷該 Enter 是選字而已或整欄 Key-In 畢, 再決定不轉或要轉 TAB, 那就更理想了.
Google 有看到討論, 曰 IME 選字不該觸發 KeyPress 等 Event, 但現在 Windows 『新注音』、『新倉頡』就是會如此,
也只好想辦法閃了.

各位大大, 可有好的 Idea 幫幫小弟?
編輯記錄
herbert2 重新編輯於 2011-12-06 05:46:37, 註解 無‧
系統時間:2024-04-25 3:30:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!