2011-05-23 43 views
2

在我的c#表格中,我有一個數據網格視圖,我想輸入一個單詞或句子的漢字和假名版本,並將它們放在不同的列中。例如:從日本IME獲取更多數據

転寢 | うたたね 
寢坊 | ねぼう 

我想實現的是在第一個提交時自動填充第二列。 我知道有些字典包含漢字讀物,但對於句子它變得複雜,並且也有許多漢字與多個閱讀。 我知道的是IME有兩個信息,因爲在輸入時我首先使用平假名,然後將其轉換爲漢字,那麼有沒有辦法獲得用戶的原始輸入?

回答

2

不幸的是我很確定你不能從IME獲得任何信息。據我瞭解,它們的設計方式是在用戶選擇正確的假名/漢字之前不要輸入任何內容。

我玩過一個WinForms應用程序,可以連接任何看起來很有前途的事件,並且什麼也沒有回來。輸入由OS處理並在選擇完成後交還給應用程序。

我會建議做你不想做的事,並抓住JMDict或類似的東西,並建立一個包含furigana的內部數據庫。最重要的是,您可以在.NET中實現自己的IME,它接受英文字符輸入並充當傳統的IME。

或者,您可以將您的應用程序更改爲基於Web的並使用現有的JavaScript IME庫like this one,這將允許您在轉換之前抓住平假名。

+0

非常感謝,javascript IME看起來很有趣。 – 2012-04-29 15:22:42

+0

我剛剛意識到,谷歌開始搜索我實際提交之前輸入的文本,當我切換不同的閱讀時,他會實時更新。這意味着JavaScript事件實際上可以獲得該輸入,因此也是瀏覽器。嗯 – 2012-09-15 15:06:10