Akselerator keyboard (atau, sederhananya, akselerator) adalah penekanan tombol atau kombinasi penekanan tombol yang menghasilkan pesan WM_COMMAND atau WM_SYSCOMMAND untuk aplikasi.
Menyalin tabel akselerator yang ditentukan. Fungsi ini digunakan untuk mendapatkan data tabel akselerator yang sesuai dengan handel akselerator-tabel, atau untuk menentukan ukuran data akselerator-tabel.
Memproses kunci akselerator untuk perintah menu. Fungsi ini menerjemahkan pesan WM_KEYDOWN atau WM_SYSKEYDOWN ke pesan WM_COMMAND atau WM_SYSCOMMAND (jika ada entri untuk kunci dalam tabel akselerator yang ditentukan) lalu mengirim pesan WM_COMMAND atau WM_SYSCOMMAND langsung ke prosedur jendela yang ditentukan.
TranslateAccelerator tidak kembali sampai prosedur jendela memproses pesan.
Dikirim saat menu akan menjadi aktif. Ini terjadi ketika pengguna mengklik item pada bilah menu atau menekan tombol menu. Ini memungkinkan aplikasi untuk memodifikasi menu sebelum ditampilkan. Jendela menerima pesan ini melalui fungsi WindowProc-nya .
Dikirim saat menu drop-down atau submenu akan menjadi aktif. Ini memungkinkan aplikasi untuk memodifikasi menu sebelum ditampilkan, tanpa mengubah seluruh menu.
Dikirim saat menu aktif dan pengguna menekan tombol yang tidak sesuai dengan kunci mnemonic atau akselerator apa pun. Pesan ini dikirim ke jendela yang memiliki menu.
Diposting ke jendela dengan fokus keyboard saat pesan WM_SYSKEYDOWN diterjemahkan oleh fungsi TranslateMessage . Ini menentukan kode karakter kunci karakter sistem yaitu, tombol karakter yang ditekan saat tombol ALT tidak berfungsi.
Jendela menerima pesan ini ketika pengguna memilih perintah dari menu Jendela atau ketika pengguna memilih tombol maksimalkan, meminimalkan tombol, memulihkan tombol, atau menutup tombol.