我正在尝试为Windows 8实现自己的拼写检查提供程序。我有一个可以接收单词并返回正确单词的类,但是,在Microsoft的Spell Checking Provider Sample中,我找不到接收用户输入字符串的类或函数。并返回更正。

最佳答案

由于您正在实现拼写检查提供程序,因此将实现ISpellCheckProvider接口(interface)。 (在您引用的示例中,这是由SampleSpellCheckProvider类实现的)

拼写检查实际上有两个阶段。第一种是检查某些文本是否包含任何错误,第二种是提供建议。

第一阶段发生在对Check的调用中。在此为您提供要检查的文本,并返回一个实现IEnumSpellingError的类,该类应缓存文本并返回在调用Next时发现的所有错误。 (您可以在示例的EnumSpellingError类中找到IEnumSpellingError的实现。在示例中,它最终在提供程序(内部方法)上调用提供程序的EngineCheck(内部方法),该提供程序在SampleEngine上调用FindFirstError-实际检查并建议隔离到SampleEngine中.h文件,其他则关注基础架构)

第二阶段发生在对Suggest的调用中。在此,您将得到一个单词,并将建议集作为实现IEnumString的类返回。

10-07 19:52
查看更多