4

Virtual Key Codeとの違いは何ですかScan Codeここでスキャンコードについて読みましたが、仮想コードが何に使用されているのか、スキャンコードが仮想コードと何が違うのかわかりません。

たとえば、Javaの場合:

private void jTextField1KeyPressed(java.awt.event.KeyEvent evt) {                                       
   int code = evt.getKeyCode(); // WHAT DO I GET ? A Scan code or a Virtual Code..?
}

Cで:

KBDLLHOOKSTRUCT *kbhook = (KBDLLHOOKSTRUCT *) lParam;
printf("%u\n",kbhook->vkCode); // WHAT DO I GET ? A Scan code or a Virtual Code..?

上記は単なる例であり、これに基づいて概念を明確にしたくありません。

4

1 に答える 1

1

スキャン コードは特定のキーのハードウェアに依存するコードを表しますが、仮想コードは同じキーのハードウェアに依存しないコードと OS に依存するコードを表します。そのため、プログラマーは常に仮想コードを使用する必要があります...

では、Java と C++ について説明します。VK_ キーワードは Microsoft で定義されており、Java は独自の VK_ キーワードを使用しています... したがって、同じ文字コードを参照する場合がありますが、値は異なります。

于 2012-10-05T06:27:54.657 に答える