Seite 1 von 1
QTableWidget und Evens
Verfasst: 6. Februar 2006 16:42
von Querdenker
Hi,
ich versuche seit Stunden den Headers (Vertical und Horizontal) ein Click-Event abzutrotzen, auch an Mouseup/-down und Move wäre ich interessiert, doch ich bekomme nix.
Könnte mir jemand verraten wo Trolltech die Events versteckt hat? Bevor ich noch an Windows lange und die Dinger einfach subclasse.
Verfasst: 6. Februar 2006 19:17
von upsala
Verfasst: 6. Februar 2006 20:02
von Querdenker
Hi,
habe ich alles schon ausprobiert

installEventFilter, eventFilter - alles. Aber nichts rührt sich

(
Ich brauche diese Events, weil ich zwar sectionResized der QHeaderView noch per connect ableiten konnte, aber das ist ein Stück zuviel: Es wird ständig gepostet, wenn jemand die Row oder Columns zieht. Was ich konkret bräuchte ist ein AfterResize-Event und genau das gibt es nicht. Ergo muss ich es mir aus mehreren Events zusammen basteln, damit Resize nur ein mal bearbeitet werden muss und nicht dauernd, weil einer die Maus zittrig bewegt.
Ich dacht mir, dass ich in diesem Event eine bool auf true setze und einfach nur noch auf ein MouseRelease lausche - fertig. Das dachte ich aber mittlererweile schon den ganzen Tag. Ich finde die Events nicht.
In einem richtigen Windows-Proggie wäre der Fisch längst gegessen.
Verfasst: 6. Februar 2006 21:25
von upsala
horizontalHeader()->viewport()->installEventFilter(...);
Hab auch einige Zeit getüftelt um das rauszufinden...
Verfasst: 6. Februar 2006 22:01
von Querdenker
Hi,
ja das wäre der Hammer, wäre ich nie darauf gekommen, zumal Qt4 ja konkret die Innenfläche (Wirkfläche, also die Tabelle selbst) als Viewport verstanden haben will und nicht das darum herum, wie Headers und Scrollbars.
Aus einem anderen ähnlichen Dialog denke ich aber, dass Du richtig liegen könntest.
Wird auf alle Fälle angetestet, Bericht folgt
Vielen vielen Dank für Deine Bemühungen

Re: QTableWidget und Evens
Verfasst: 7. Februar 2006 07:13
von macman
Querdenker hat geschrieben:Könnte mir jemand verraten wo Trolltech die Events versteckt hat? Bevor ich noch an Windows lange und die Dinger einfach subclasse.
Warum machst Du es dann nicht einfach? Ich such da schon lange nicht mehr und mache gleich meine eigenen QHeaderViews.
Verfasst: 7. Februar 2006 09:00
von Querdenker
Ist normalerweise auch meine Meinung: Nicht lange suchen: Do it! Aber in diesem Fall echt der einfachere Weg. Ist schon ein sehr komplexes Widget.
Also das über das viewport()-Widget läuft astrein, genau die Evens die ich gesucht hatte
D A N K E