2011-05-23 27 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