1

「ctrl+g」を押すと、任意のプログラム(Chromeブラウザー、ワードドキュメント、パワーポイントドキュメントなど)でカーソルのすぐ左の文字を自動的に削除する単純なC#プログラムを作成しています。 )。「ctrl+g」のグローバルフックをインストールしましたが、正常に動作します。codeprojectから見つけたキーボードシミュレーターを使用しています:http://www.codeproject.com/Articles/28064/Global-Mouse-and-Keyboard-Library 私の問題は、次のようなバックスペースをシミュレートするときです。

KeyboardSimulator.KeyPress(Keys.Back);

カーソルの左側の文字だけでなく、単語全体が削除されます。たとえば、次のテキスト行を含むMicrosoft Wordドキュメントを使用している場合:「Happynew year」カーソルが「year」の終わりにあり、ctrl + gを押すと、プログラムは「year」を削除して、 「year」の文字「r」を削除するのではなく、「new」のすぐ右側にカーソルを置きます。他のシミュレーターも試しましたが、同じ結果になりました。誰かが解決策を持っているか、私が間違っていることを知っていますか?ありがとう。

4

1 に答える 1

7

どうやら、Ctrl + Backspaceは通常、Windowsで単語全体を削除することを意味します。Ctrl + gを押し、フックがバックスペースキーをシミュレートすると、Ctrlが下にあるため、プログラムはCtrl+Backspaceを認識します。

于 2012-12-17T01:55:50.480 に答える