全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2592
推到 Plurk!
推到 Facebook!

請問繼承TWincontrol 的物件, 要如何讀到輸入法的中文unicode 碼?

缺席
Lordaeron
初階會員


發表:24
回覆:93
積分:33
註冊:2004-05-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-03-07 23:25:08 IP:61.229.xxx.xxx 訂閱
我現在只有keydown 和keypress 兩個event, 這樣對Big5 碼處理正常, 雖然說也搞不清楚它
實際是由誰收到中文字的, 但反正是可以顯示出來就對了, 但如果我想處理的是Unicode 的
碼, 要如何處理呢? 看Twincontrol又沒有想對的東西.
有人可以講一下嗎?
Coffee
版主


發表:31
回覆:878
積分:561
註冊:2006-11-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-03-08 00:14:30 IP:203.67.xxx.xxx 訂閱
原生的VCL是無法支援unicode,請自行爬文,找TntWare來用,站上這類資源很多
------
不論是否我發的文,在能力範圍皆很樂意為大家回答問題。
為了補我的能力不足之處,以及讓答案可以被重複的使用,希望大家能儘量以公開的方式問問題。
在引述到我的文時自然會儘量替各位想辦法,謝謝大家!
Lordaeron
初階會員


發表:24
回覆:93
積分:33
註冊:2004-05-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-03-08 00:18:49 IP:61.229.xxx.xxx 訂閱
我知原生的無法support unicode, 所以我才繼承自TWincontrol.
而TNTControl 也是繼承自TWincontrol的而已.
但問題不在原生component support 的問題, 我只是要截取IME 的輸入吧了
Coffee
版主


發表:31
回覆:878
積分:561
註冊:2006-11-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-03-08 13:05:23 IP:203.73.xxx.xxx 訂閱
你的問題讓我認為你是 想直接利用TWinControl的event  TKeyPressEvent = procedure (Sender: TObject; var Key: Char) of object;來操作,
如果你有看TntWare的source,那你就會發現應該是不可行的,char跟widechar是兩回事。
如果不是,那可能是我誤會了,我就不是那麼清楚你想從IME取得unicode的目的。
------
不論是否我發的文,在能力範圍皆很樂意為大家回答問題。
為了補我的能力不足之處,以及讓答案可以被重複的使用,希望大家能儘量以公開的方式問問題。
在引述到我的文時自然會儘量替各位想辦法,謝謝大家!
Lordaeron
初階會員


發表:24
回覆:93
積分:33
註冊:2004-05-19

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-03-08 13:13:36 IP:61.229.xxx.xxx 訂閱

===================引 用 Coffee 文 章===================
你的問題讓我認為你是 想直接利用TWinControl的event TKeyPressEvent = procedure (Sender: TObject; var Key: Char) of object;來操作,
如果你有看TntWare的source,那你就會發現應該是不可行的,char跟widechar是兩回事。
如果不是,那可能是我誤會了,我就不是那麼清楚你想從IME取得unicode的目的。
不管用keyOO 還是keyXX 都無法取得中文碼, 這以前有討論過的了. 不是新聞了.
所以應該是要直接收windows 的message 的了.
但問題是, Twincontrol 中, 並無收IME 字碼的部分, 所以才想知, 只繼承TWincontrol
要如何處理中文輸入的字碼.
當然我要收到的是unicode 編碼的, 好讓我自行處理字碼轉換的問題.
系統時間:2024-04-19 10:34:31
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!