6

ユーザーがキーボードから入力している文字にコードがアクセスする必要がある MS-Word アドオンを開発しています。

private void ThisDocument_Startup(object sender, System.EventArgs e)
{
    this.SelectionChange += new SelectionEventHandler(ThisDocument_SelectionChange);
}

void ThisDocument_SelectionChange(object sender, SelectionEventArgs e)
{
    MessageBox.Show(e.Selection.Text);
}

SelectionChange イベントでテキストを取得できると思いますが、キーを押したときにイベントが発生しません。キーを押したときにイベントをトリガーする方法はありますか? また、それを行うためのより簡単な方法や、機能を提供するオープンソース プロジェクトがあれば、それは大歓迎です。

4

1 に答える 1

5

Microsoft はキー ダウン イベントをネイティブに公開していませんが、回避策があります。

以下にリンクされている記事の助けを借りて、キーボードチェックを実装しました。

http://www.switchonthecode.com/tutorials/winforms-accessing-mouse-and-keyboard-state

これにより、IsKeyDown という静的メソッドが提供され、サブスクライブできるデリゲートの実装と呼び出しはかなり簡単になります。

于 2012-12-31T12:49:58.527 に答える