Englisches Tastaturlayout (Y --> Z etc.)
Übersicht

PacManiBetreff: Englisches Tastaturlayout (Y --> Z etc.) |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo,
habe in der Suche nichts relevantes gefunden, deshalb mache ich mal einen Thread auf... In meinem Programm werden die Tasten QW, AS und YX genutzt. Sobald der Nutzer nun aber ein anderes Tastaturlayout hat, liegen diese Tasten nicht mehr nah beieinander. Im englischen Tastaturlayout liegt neben X nicht Y, sondern Z, was die Bedienung irrsinnig kompliziert machen würde, im französchischen Tastaturlayout ist QW dann auch noch AZ, soweit ich mich erinnere, und die ganze Bedienung würde total durcheinander geraten. Die Scancodes sagen mir ja schon jetzt, dass meine oben genannte Bedienung nur auf deutschen Layouts Sinn macht: Code: [AUSKLAPPEN] KQ = 16, KW = 17, KA = 30, KS = 31, KY = 21, KX = 45
Da ist bei KY zu KX kein Abstand mehr von 1. Wie kann ich das umgehen? Tastendrücke anders herausfinden (gibt es da einen Blitz-internen Befehl oder muss ich über die WinAPI gehen?) oder die Lokalisierung des System vorraus herausfinden und dann Aktionen dagegen ausführen? |
||
![]() |
Pummelie |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du wirst wohl die Systemsprache abfagen und demnach deine Tastatursteuerung setzen müssen... | ||
It's done when it's done. |
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Und wie mach ich das? *nebenbei noch am Suchen*
Gefunden: HKEY_CURRENT_USER\Control Panel\International HKEY_USERS\.DEFAULT\Control Panel\International sCountry Jetzt hab ich nur überhaupt keine Ahnung wie man an die Registry mit Blitz kommt ![]() |
||
![]() |
Pummelie |
![]() Antworten mit Zitat ![]() |
---|---|---|
Suche auch danach, du wirst finden, (uche nur nach registry) | ||
It's done when it's done. |
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Haha, ja, verschachteltes Suchen ![]() ![]() |
||
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Eigentlich könnte dir da GetKey![]() Es gibt nur das Problem, dass bei GetKey nicht mehrere Tasten gleichzeitig abgefragt werden können. mfg Thunder |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du es automatisch hin bekommst - um so besser. Grundsätzlich wär's aber auch nicht falsch, den Benutzer selber zu fragen z.B. beim ersten Start. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mach die Tastenbelegung konfigurierbar? Das ist mir als Spieler eigentlich immer das liebste. | ||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wird die teste Z-Taste denn dringend gebraucht? Ansonsten leg doch einfach die funktion sowohl auf die Y als auch auf die Z taste, sodass das ganze unabhängig vom Layout funktioniert.
Eine eigene config wäre aber in der tat besser, da z.B. leute mit NEO-Layout bei deiner hardcoded variante zimlich aufgeschmissen wären. |
||
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde es ganz ander lösen und zwar mit den Tasten WE SD XC. Es macht keinen Unterschied vermeidet aber Ärger ![]() |
||
Play Satyr! |
Blitzjockey |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@ DerHase,
Da er auch Französische Tatsturen bedienen möchte, geht das leider nicht auf. Aber, mal eine doofe Frage (Nein, habe nicht gerade ein UK, US oder Franz. Tastatur zum Testen rumliegen), stimmt es überhaupt das der Scancodes sich ändern, nur weil der darangehängte Buchstabe sich ändert? Was ich meine ist, das auf mein Deutsche Tastatur Q 16 und W 17 ist. Wie Du beschrieben hast. Einfach von 16, hoch bis 28 für Eingabe. Dass heisst (denke ich) das die Scancodes, wenn man die Position der Tasten anschaut, gleich bleibt, nur welche Buchstabe gerade betätigt wird, sich ändert. Z.B. Deutsch: 16 = Q und womöglich Französisch: 16 = A. Beide Linksoben, neben 17, nur andere Buchstaben. Dann brauchst Du also nur den Scancodes abchecken, die Positionen (2x3 Tasten übereinander) bleiben gleich, damit Dein Program auch. Da brauchst Du nur pro Tastatur an zu geben welche Tasten der Spieler drucken muss, oder Du zeigst ein Tatstatur ohne Buchstaben eingezeichnet, nur Farblich gegenzeichnet. (oder eine andere kreative Lösung..) Da die Buchstaben eh kein Relevanz zur Funktion haben, ist das ja nicht ganz so schlimm. Aber, wie gesagt, ich habe hier leider kein Ausländische Tastatur mehr rumliegen, zum testen.. Lg, BlitzJ. |
||
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Blitzjockey hat recht und ich habe genau das umgekehrte vom Richtigen erzählt.
Man braucht nicht unbedingt eine andere Tastatur um das zu testen. Es reicht auch das Ändern des Layouts in der Eingabeschemaleiste - und es funktioniert. |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
![]() |
Badudel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit Alt-Shift kann man zum Beispiel von Deutsch auf Englisch schalten. Ein Test hat mir gezeigt, dass sich die Scancodes nicht ändern, also gehe ich mal davon aus, dass es im französischen Modus genauso geht.
Gruß! |
||
Wir werden dem Schwein schon schlachten, auch wenn ihm quiekt.
Zum Teufel mit das Grammatik! |
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja, ich hab mich wohl mies ausgedrückt. Die Scancodes sind natürlich die gleiche, nur die Position der "echten" Taste liegt dann woanders. | ||
Blitzjockey |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Den Buchstaben, ja, die schon. Aber da Deine Buchstaben keine direkte Relation zum Bewegung haben, bist Du ja nicht gezwungen Deine 'Kunden' eine Buchstabe zu melden, es reicht zu zeichen welche Taste sie drücken sollen.
Aber das kriegst Du schon hin!Du weisst jetzt das Du über Registry den Tastatur herausfinden kannst, und kannst damit der Hilfe anpassen. Da es Weltweit aber einige Layouts gibt, ist es einfacher das ganze Buchstaben-frei zu lösen! lg, BlitzJ. |
||
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich lass mir was einfallen ![]() |
||
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ähh huch? Also ich hab wohl irgendwas falsch gemacht letztens, der ganze Thread hier verwirrt ja nur :S
Also wenn ich den Tastencode von Z einfüge, kommt schon das passendes raus... arg, sorry. Hätte das Ganze mal genauer testen müssen. |
||
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Scancode ist unabhängig vom Buchstaben und GetKey()/WaitKey() sind vom Keyboardlayout abhängig. D.h. wenn du KeyDown() und KeyHit() verwendest, sollte alles mit denselben Tastenpositionen auf jedem Layout funktionieren. | ||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group