Hallo,
ich bin mal wieder auf ein unerwartetes Problem gestoßen, bei dem ich nicht weiß, wo ich ansetzen soll:
In meinem Programm verwende ich eine QGroupBox mit einer ganzen Reihe von QPushButtons darin, die sich alle "checkable" sind und im "autoExclusive"-Modus betrieben werden.
Jetzt habe ich festgestellt, dass im Gegensatz zu einer Gruppe "normaler" Buttons beim Drücken der Pfeiltasten direkt zwischen den Buttons umgeschaltet ("getoggled") wird.
Wie kann ich das verhindern bzw. wie bekomme ich das Verhalten einer normalen Button-Gruppe, also das durch Drücken der Pfeiltasten analog zur Tab-Taste lediglich der Focus durchgeschaltet wird ?
Bin für jeden Ansatz dankbar, bei den ganzen Keybord-Geschichten fehlt mir der Durchblick...
Auto-"toggeln" durch Drücken der Pfeiltasten verhi
Manuelles deselektieren der anderen Buttons
Hallo,
du könntest autoExclusive bei allen Buttons ausschalten und manuell dafür sorgen, dass nur ein Button zur gleichen Zeit gedrückt werden kann. Somit kann der Benutzer mittels den Pfeiltasten den Focus verschieben und sobald er mittels Leertaste einen anderen Button wählt, muss der damit verbundene Slot dafür sorgen, dass alle anderen deselektiert werden.
MfG
du könntest autoExclusive bei allen Buttons ausschalten und manuell dafür sorgen, dass nur ein Button zur gleichen Zeit gedrückt werden kann. Somit kann der Benutzer mittels den Pfeiltasten den Focus verschieben und sobald er mittels Leertaste einen anderen Button wählt, muss der damit verbundene Slot dafür sorgen, dass alle anderen deselektiert werden.
MfG
Hi,
danke für deine Antwort, aber genau das möchte ich eigentlich vermeiden, da die Anzahl der Buttons doch recht groß und außerdem variabel ist. Der auto-Exclusive-Modus leistet da schongute Dienste.
Mein Problem ist, dass ich nicht weiß, wo ich ansetzen soll. Muß ich an die GroupBox oder die einzelnen Buttons ran ? Woher kommen eigentlich diese "Standard-Tastaturbelegungen" ? Shortcuts sind es wohl nicht, wenn ich die Ausschalte ändert sich jedenfalls nichts... !?
danke für deine Antwort, aber genau das möchte ich eigentlich vermeiden, da die Anzahl der Buttons doch recht groß und außerdem variabel ist. Der auto-Exclusive-Modus leistet da schongute Dienste.
Mein Problem ist, dass ich nicht weiß, wo ich ansetzen soll. Muß ich an die GroupBox oder die einzelnen Buttons ran ? Woher kommen eigentlich diese "Standard-Tastaturbelegungen" ? Shortcuts sind es wohl nicht, wenn ich die Ausschalte ändert sich jedenfalls nichts... !?
Radiobuttons verwenden?
Auch wenn das jetzt vielleicht wenig konstruktiv ist: Eigentlich verwendet man für solche Zwecke Radiobuttons. Da ist das ganz klar geregelt. Mir ist bisher keine Anwendung untergekommen, bei der man die QPushButtons im autoExclusive-Modus betreibt und ich bin auch ein Freund bewährter Konzepte. Alleine, damit der Benutzer sich direkt zurecht findet. Wäre das keine gute Idee?
Ohne jetzt im Detail auf meine Anwendung einzugehen: Ich brauche Buttons mit einer großen Fläche (u.A. für Pixmaps).
Abgesehen davon würde mich das kein Stück weiter bringen, weil eine Gruppe von RadioButtons sich bzgl.der Tastur (oh Wunder) identisch verhält (QPushButton und QRadioButton sind durchaus verwandt
).
Den einzigen Ansatz den ich im Augenblick hätte, wäre einen EventFilter zu bauen, welcher sämtliche QKeyEvents mit Pfeil-Tasten abfängt und (wie auch immer) umbastelt. Den Filter müsste ich dann halt auf sämtlich Buttons anwenden... Nicht gerade schön...
Abgesehen davon würde mich das kein Stück weiter bringen, weil eine Gruppe von RadioButtons sich bzgl.der Tastur (oh Wunder) identisch verhält (QPushButton und QRadioButton sind durchaus verwandt
Den einzigen Ansatz den ich im Augenblick hätte, wäre einen EventFilter zu bauen, welcher sämtliche QKeyEvents mit Pfeil-Tasten abfängt und (wie auch immer) umbastelt. Den Filter müsste ich dann halt auf sämtlich Buttons anwenden... Nicht gerade schön...