qkeysequence

___ qstnhdr ___ QKeySequence zu QKeyEvent ___ tag123c ___ C ++ ist eine universelle Programmiersprache. Es wurde ursprünglich als Erweiterung von C entworfen und behält eine ähnliche Syntax, ist aber jetzt eine komplett andere Sprache. Verwenden Sie dieses Tag für Fragen zu Code, der mit einem C ++ - Compiler kompiliert werden soll. ___ answer20656496 ___

Eine einfache Lösung (in Python geschrieben):

%Vor%

Gibt Ihnen die gesamte Sequenz in Form einer Zeichenfolge, z. B. "Strg + Q".

Die Vorteile sind (zumindest in Python), die Sie in einem Diktat der Verknüpfungen finden können, während eine QKeySequence nicht hashbar gewesen wäre.

Achten Sie darauf, dass Sie den richtigen Typcase und Abstand verwenden. "Strg + Q" wird nicht übereinstimmen. Um alle Probleme zu vermeiden, können Sie beim ersten Lesen der Tastenkombinationen Folgendes tun:

%Vor%

und suchen / finden mit

%Vor%

oder besser noch:

%Vor%

und passen Sie direkt an.

    
___ answer10386319 ___

Im Allgemeinen können Sie die Objekte %code% und %code% nicht vergleichen. %code% stellt das Ereignis dar, dass eine einzelne -Taste gedrückt oder losgelassen wird, während %code% eine Folge von bis zu vier Schlüsseln mit jeweils optionalen Modifikatorinformationen enthalten kann.

Sie können die Objekte jedoch vergleichen, wenn Sie sicher sind, dass Ihre Schlüsselfolgen immer nur einen Schlüssel enthalten:

%Vor%

Sie können sogar eine Konvertierungsfunktion für %code% in %code% :

schreiben %Vor%

Beachten Sie, dass es nicht sinnvoll ist, ein %code% in ein %code% zu konvertieren, da Sie einen bestimmten Ereignistyp wie %code% oder %code% auswählen müssen.

    
___ answer18767571 ___

Eine Qt4.7-Notiz mit Code zum Konvertieren von KeyEvent in KeySequence. (Aber der Code ist fehlerhaft, weil es einen int für den Schlüsselcode von QKeyEvent.key () in eine Zeichenfolge umsetzt. Besser QKeyEvent.text ()?)

zu verwenden

Auch der Code in Ferdinands Antwort:

%Vor%

ist nicht typsicher (mischt int und QKeyboardModifiers) und wenn es in Python konvertiert wird, schlägt es in PyQt fehl, aber nicht in PySide?

Auch "QKeyEvent stellt das Ereignis eines einzelnen Tastendrucks oder -auslösers dar" erklärt es nicht wirklich. Ein QKeyEvent kann Ihnen sagen, welche Tastenkombination nicht gedrückt wurde, nur nicht die Reihenfolge, in der sie gedrückt wurden. Wenn der Benutzer Tasten nacheinander drückt, erhält Ihre App möglicherweise eine Folge von QKeyEvents (abhängig davon, ob Ihre Anwendung für QKeyEvent standardmäßige oder überschriebene Handler verwendet.) Die späteren QKeyEvents zeigen Ihnen alle zum Zeitpunkt des Ereignisses ausgefallenen Schlüssel an . Sie könnten nicht mehr unten sein. Es ist ziemlich kompliziert.

    
___ tag123keyevents ___ Ein Ereignis, das ausgelöst wird, wenn eine Taste auf einem Tastatureingabegerät gedrückt wird ___ qstntxt ___

Ich bin in einer Situation, in der ich versuche, in einer JSON-Konfigurationsdatei zu lesen, die angibt, welche Tastenbefehle bestimmten Aktionen zugeordnet sind. Zum Beispiel:

%Vor%

Das Konstruieren von %code% aus dem Combo-Tag ist trivial, aber ich muss %code% s überwachen, um Aktionen auszulösen. Bitte beachten Sie, dass verwendet werden muss, um %code% s zu überwachen, da sie auch für andere Zwecke in der Anwendung verwendet werden. d. h. es wäre nicht akzeptabel, nur Tastaturbefehle für %code% s zu überwachen (falls das überhaupt möglich ist).

Kurz vor dem Schreiben eines benutzerdefinierten Parsers, um ein %code% -Objekt für jedes %code% -Tag zu erstellen, gibt es trotzdem einen Vergleich zwischen %code% und %code% ? Zum Beispiel:

%Vor%     
___ tag123qt ___ Qt ist ein plattformübergreifendes Anwendungsentwicklungs-Framework, das häufig für die Entwicklung von Anwendungssoftware verwendet wird, die auf verschiedenen Software- und Hardwareplattformen ohne oder mit nur geringer Änderung der zugrundeliegenden Codebasis ausgeführt werden kann. Qt ist sowohl mit kommerziellen als auch mit Open-Source-Lizenzen verfügbar. ___ tag123qkeysequenz ___ Die QKeySequence-Klasse, Teil des Qt-Frameworks, kapselt eine Tastenfolge ein, wie sie von Shortcuts verwendet wird. ___
3
Antworten

QKeySequence zu QKeyEvent

Ich bin in einer Situation, in der ich versuche, in einer JSON-Konfigurationsdatei zu lesen, die angibt, welche Tastenbefehle bestimmten Aktionen zugeordnet sind. Zum Beispiel: %Vor% Das Konstruieren von QKeySequence aus dem Combo-Tag ist...
30.04.2012, 12:05