2

Compact Framework 3.5 を使用して、PDA 用の Windows Mobile アプリケーションを開発しています。この PDA のすべてFormのハードウェア キーをキャッチする必要があります。

ここに画像の説明を入力

ですから、数字ボタン、「送信」ボタン、または「カメラ」ボタンを押した場合、どのボタンが押されたかを知りたいのです。

KeyDownの終了KeyUpイベントを使用してみましFormたが、すべてのキーが傍受されるわけではありません。APIを PInvoke しようとしましAllKeysたが、この方法でカメラ キーを除くすべてのキーを無効/有効にすることができますが、これは私が望むものではありません。

ハードウェア キーを完全に制御する必要があります。どのようにできるのか?

4

2 に答える 2

1

キーボード メッセージを生成するすべてのキーをキャッチできます: http://www.hjgode.de/wp/2012/09/20/windows-mobile-cf-how-to-catch-f1-and-f2-in-weh/

キーがキーボード メッセージを発行しない場合 (たとえば、Intermec のスキャン ボタンが名前付きイベントを発行するなど)、それをキャッチすることはできません。OEM がこれらのキーの SDK も提供している可能性があります。

http://www.hjgode.de/wp/2011/12/20/windows-mobile-the-no-go-world-of-function-keys/も参照してください。

于 2013-05-10T15:47:21.557 に答える
0

すべてをキャッチするには、デバイスの製造元が提供する SDK を使用する必要があります。

あなたが見つけたように、Windowsオペレーティングシステムに接続されているアイテムのみをキャッチしますKeyDown.KeyUp

カメラ、バーコード スキャン、および電源ボタンは、Windows を実行している電子デバイスに通常見られるアイテムではありません。また、これらに業界標準のキー割り当てがあるとは思えません。

于 2013-05-10T14:36:24.860 に答える