精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
锐英源精品开源心得,禁止转载,禁止非法使用,侵权必究
有时,内置拼写检查器和/或词库的编辑框是非常好的,特别是如果您使用编辑框输入更长的消息(例如日志,描述,IM消息,...)。
在搜索网页时,我发现一些免费的拼写检查器,但大多数在Windows上无法工作,或者错过了许多语言字典。然后我发现MySpell由免费的OpenOffice套件使用。它是根据BSD许可证分发的,这意味着您可以在商业应用程序中使用它。你只需要在应用程序的某个地方提及版权。
而且由于MySpell被OpenOffice使用,所以几乎每种语言都有字典。那些字典文件与Mozilla使用的字典文件兼容。
我发现MySpell,我开始研究它的技术,用于扩展CEdit控件,以充分利用它。结果如下:
要使用CSpellEdit控件:
由于编辑控件的默认上下文菜单被替换(关于如何做,参见PJ Arends的文章),您可能需要翻译这些字符串(默认为英文)。为此,您可以将以下字符串添加到资源字符串中:
如果这些字符串不存在,那么将使用默认的英文字符串。
另外:如果没有找到或设置字典文件,那么CSpellEdit控件就不会做任何事情,就像它正常的CEdit控制一样。
CSpellEdit自动搜索字典文件。它会在程序所在的目录中和/ dic /子文件夹中查找这些文件。例如:
由于这些文件夹中可能有许多字典文件,CSpellEdit首先检查当前用户区域设置是否有字典。如果没有找到,那么它会寻找英文字典。例:
Current user locale is: de_CH
try myapp\de_CH.*
try myapp\dic\de_CH.*
try myapp\de_DE.*
try myapp\dic\de_DE.*
try myapp\en_US.*
try myapp\dic\en_US.*