Ruft den Scancode einer Taste ab.
SC := GetKeySC(TasteName)
Typ: Zeichenkette
Ein beliebiges Zeichen oder einer der Tastennamen aus der Tastenliste. Beispiele: B, 5, LWin, RControl, Alt, Enter, Escape.
Alternativ kann dieser Parameter ein expliziter virtueller Tastencode wie vkFF, ein expliziter Scancode wie sc01D oder eine Kombination aus VK und SC (in dieser Reihenfolge) wie vk1Bsc001 sein. Beachten Sie, dass diese Codes hexadezimal sein müssen.
Typ: Integer
Diese Funktion gibt den Scancode der angegebenen Taste zurück, oder 0, wenn die Taste ungültig ist oder keinen Scancode hat.
Bevor der Scancode mit einer internen Funktion wie Hotkey oder GetKeyState verwendet werden kann, muss er zunächst in das hexadezimale Format umgewandelt werden, z.B. mit Format("sc{:X}", sc_code)
. Extern aufgerufene Funktionen via DllCall verwenden dagegen meist direkt den numerischen Wert.
Wenn TasteName einem virtuellen Tastencode oder einem einzelnen Zeichen entspricht, versucht die Funktion, den Wert einem Scancode zuzuordnen, indem sie bestimmte Systemfunktionen aufruft, die sich auf die aktuelle Tastaturbelegung des Skripts beziehen. Diese Tastaturbelegung kann von der Tastaturbelegung des aktiven Fensters abweichen.
Wenn TasteName ein ASCII-Buchstabe im Bereich von A bis Z ist und keine Zuordnung innerhalb der Tastaturbelegung hat, wird die entsprechende virtuelle Taste im Bereich von vk41 bis vk5A als Fallback verwendet. Diese virtuelle Taste wird dann wie oben beschrieben einem Scancode zugeordnet.
Einige Tastaturbelegungen haben keine 1:1-Zuordnung von virtuellen Tastencodes zu Scancodes. Wenn mehrere Interpretationen möglich sind, werden die Systemfunktionen voraussichtlich eine auswählen, die auf der in der Tastaturbelegung festgelegten Reihenfolge basiert, was nicht immer die gängigste oder logischste Wahl ist.
GetKeyVK, GetKeyName, GetKeyState, Tastenliste, Format