问题
I would like to know whether the user pressed F1 or F2 or F3 or F4 or F5 or ESC and perform an action after that but I don't know how to get these keys. Can anyone help?
回答1:
For Windows, there is the _getch
function, which returns the bytes of a key code, one by one. You can get a function key that way, detecting it by the presence of certain codes: 0x00
or 0xe0
as shown in the example in [C\C++] - how get arrow keys(correctly) using getch()?. When _getch
returns one of those, the next byte is normally a virtual key code.
For making sense of those codes, the place to start reading is the Keyboard Input Reference, looking for virtual keys. Microsoft provides a list here: Virtual-Key Codes
Some people might advise starting with getch
, but Microsoft provides this only for legacy use (does not recommend its use in new programs due to conflict with POSIX, and provides _getch as the alternative).
来源:https://stackoverflow.com/questions/30518040/how-to-use-the-keys-f1-to-f10-in-c-code