[gelöst] Steuerung über Tastatur

Alles rund um die Programmierung mit Qt
Antworten
KunoK
Beiträge: 8
Registriert: 27. September 2005 09:52

[gelöst] Steuerung über Tastatur

Beitrag von KunoK »

Hallo allerseits!
Gibt es ne Möglichkeit einer TableView, ListWidget o.ä. zu sagen, dass falls man eine bestimmte Taste drückt (z.B. Return) ein bestimmter Slot ausgeführt wird? (z.B. Löschen eines Items in ListWidget) Für die Maussteuerung gibts das Signal clicked (u.a.) wenn am ein Item anklickt.
Man kann sich jedoch auch Items per Tastatur auswählen...

Eine Möglichkeit wäre sicher eigene Widgets von den QtWidgets abzuleiten und das keypressEvent neu zu implementieren. Aber dass möchte ich nicht tun, da ich mir meine GUI mit dem Designer zusammenbau und dabei nur auf die Standardwidgets zugreifen kann.

Es muss doch sicher auch die Möglichkeit über Signale dem Widget nachträglich zu sagen, wie es auf einen bestimmten Klick reagieren soll...
Zuletzt geändert von KunoK am 2. Januar 2006 12:33, insgesamt 1-mal geändert.
life would be so easy, if I had the source code
Manicboy
Beiträge: 19
Registriert: 15. November 2005 08:27
Wohnort: Berlin
Kontaktdaten:

Beitrag von Manicboy »

es gibt die Signale "keyPressEvent" und "keyReleaseEvent" (manche Tasten reagieren nur auf eines der Signale z.B. RETURN und ENTER)...mit denen kannst du arbeiten und dann per SWITCH auf bestimmte Tasten abfragen und entsprechend reagieren...im ungünstigsten Fall musst du vom QTableView oder entsprechendes ableiten und den/die Event-Handler überladen
--
Who the fuck is general failure and why is he reading my harddisk?

"Intel inside" is not a trademark, it's a warning!!!
KunoK
Beiträge: 8
Registriert: 27. September 2005 09:52

Beitrag von KunoK »

Aber diese Signale kann ich doch nur verwenden wenn ich von TableView oder ähnlichem ableite, was ich ja eigentlich vermeiden will, da dann keine sinnvolle Arbeit mit dem Designer möglich ist
life would be so easy, if I had the source code
Manicboy
Beiträge: 19
Registriert: 15. November 2005 08:27
Wohnort: Berlin
Kontaktdaten:

Beitrag von Manicboy »

ja, ok, mag sein, dass es Probleme mit dem Designer gibt, aber dann arbeite ohne den Designer...mache ich auch :-)
--
Who the fuck is general failure and why is he reading my harddisk?

"Intel inside" is not a trademark, it's a warning!!!
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Das sollte helfen wenn es kein Signal für keypress gibt (was wohl nicht der Fall ist)
http://doc.trolltech.com/4.0/qobject.html#eventFilter
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
KunoK
Beiträge: 8
Registriert: 27. September 2005 09:52

Beitrag von KunoK »

Der Designer ist schon ne feine Sache und erspart einem viel Arbeit. Hab jetzt gefunden wies funktioniert: Es gibt im Designer die Option "Promote to Custom Widget" mit der man dann auch abgeleitete Widgets einfügen kann.
In den abgeleiteten Widgets kann ich ja dann die Key-Events neu implementieren.

Das mit dem Event-Filter scheint ja auch ne Alternative zu sein, die aber eben nicht so elegant ist, wie der Weg über Vererbung.

Danke für die Hilfe
life would be so easy, if I had the source code
Antworten