Fungsi GetKeyState (winuser.h)

Mengambil status kunci virtual yang ditentukan. Status menentukan apakah tombol naik, turun, atau beralih (aktif, nonaktif—bergantian setiap kali tombol ditekan).

Sintaks

SHORT GetKeyState(
  [in] int nVirtKey
);

Parameter

[in] nVirtKey

Jenis: int

Kunci virtual. Jika kunci virtual yang diinginkan adalah huruf atau digit (A hingga Z, hingga z, atau 0 hingga 9), nVirtKey harus diatur ke nilai ASCII karakter tersebut. Untuk kunci lain, itu harus berupa kode kunci virtual.

Jika tata letak keyboard non-Bahasa Inggris digunakan, tombol virtual dengan nilai dalam rentang ASCII A hingga Z dan 0 hingga 9 digunakan untuk menentukan sebagian besar kunci karakter. Misalnya, untuk tata letak keyboard Jerman, kunci virtual nilai ASCII O (0x4F) mengacu pada kunci "o", sedangkan VK_OEM_1 mengacu pada tombol "o dengan umlaut".

Mengembalikan nilai

Jenis: SHORT

Nilai yang dikembalikan menentukan status kunci virtual yang ditentukan, sebagai berikut:

  • Jika bit berurutan tinggi adalah 1, kuncinya tidak berfungsi; jika tidak, itu sudah habis.
  • Jika bit berurutan rendah adalah 1, kunci akan beralih. Kunci, seperti kunci CAPS LOCK, dialangi jika dinyalakan. Kunci tidak aktif dan tidak tersentuh jika bit berurutan rendah adalah 0. Lampu indikator tombol alih (jika ada) pada papan ketik akan menyala saat tombol di-toggle, dan mati saat tombol tidak disentuh.

Keterangan

Status kunci yang dikembalikan dari fungsi ini berubah saat utas membaca pesan kunci dari antrean pesannya. Status tidak mencerminkan status tingkat interupsi yang terkait dengan perangkat keras. Gunakan fungsi GetAsyncKeyState untuk mengambil informasi tersebut.

Aplikasi memanggil GetKeyState sebagai respons terhadap pesan input keyboard. Fungsi ini mengambil status kunci saat pesan input dibuat.

Untuk mengambil informasi status untuk semua kunci virtual, gunakan fungsi GetKeyboardState .

Aplikasi dapat menggunakan konstanta kode kunci virtualVK_SHIFT, VK_CONTROL, dan VK_MENU sebagai nilai untuk parameter nVirtKey . Ini memberikan status tombol SHIFT, CTRL, atau ALT tanpa membedakan antara kiri dan kanan. Aplikasi juga dapat menggunakan konstanta kode kunci virtual berikut sebagai nilai untuk nVirtKey untuk membedakan antara instans kiri dan kanan kunci tersebut:

VK_LSHIFTVK_RSHIFT VK_LCONTROLVK_RCONTROLVK_LMENUVK_RMENU Konstanta pembeda kiri dan kanan ini hanya tersedia untuk aplikasi melalui fungsi GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyState, dan MapVirtualKey.

Contoh

Misalnya, lihat Menampilkan Input Keyboard.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header winuser.h (sertakan Windows.h)
Pustaka User32.lib
DLL User32.dll

Lihat juga