我正在创建一个小型辅助功能(C#),它必须帮助用户在Windows中的任何位置插入一些文本。类似于Word中的自动图文集功能或Visual Studio中的智能感知功能。因此,无论是在Outlook中键入电子邮件,在OneNote中键入注释还是在Facebook上注释(使用任何浏览器)。
当用户键入已知单词或句子的前3个字母时,我想提供一些可用于完成单词/句子的弹出窗口。
我已经检测到用户正在键入的内容,并且该输入也与自动填充列表中的单词列表匹配。 但现在我需要知道,如何插入在光标位置找到的文本? (而用户在任何程序中......) 如果这篇新文本可以替代已经输入的内容,那么真正好的东西就是它。这样我可以让用户键入“nhw”,它将被“需要帮助”所取代。
非常感谢你的帮助, Tys
答案 0 :(得分:3)
如果您不想重新发明轮子,可能需要查看PhraseExpress,其中this feature。
适用于任何计划,可免费供个人使用。
它支持SendKey()
,VK_Packet
和WMChar
作为文字插入方法。
答案 1 :(得分:2)
您可能想要使用SendKeys()
。请参阅How to: Simulate Mouse and Keyboard Events in Code。
要将“nhw”替换为“需要帮助”,您需要在输入“需要帮助”之前发送+({LEFT 3})need help with
选择“nhw”(Shift +左/左/左)。