Mehrere Radiobuttons (gruppen) in QT4 nicht möglich???
-
Hi,
ich benutze QT4 und möchte gerne folgendes erzeugen:
http://www.250kb.de/u/090501/j/80af9c7b.jpg
Wenn ich auf RadioButton 1 klicke, habe ich eine weitere wahl zwischen 1-1 oder 1-2...wenn ich auf RB 2 klicke, dann kann ich entscheiden ob 2-1 oder 2-2.
Ich habe keine ButtonGroupBox zu Verfügung, da das nur in QT3 unterstütz wird, aber laut doku soll das mit ner normalen Groupbox auch funktionieren.
Wenn zu Beginn nichts ausgewählt ist, kann ich ganz normal zwischen 1 oder 2 wählen...sobald ich aber 1-1, 1-2, 2-1, 2-2 anklicke, wird 1 und 2 zu einer normalen checkbox (ich kann zwar nur eines von beiden auswählen, aber eben auch keins von beiden und das darf nicht sein...) ???????????
-
Korrektur: die äußenren Radiobuttons werden wirklich zu Checkboxen (ich kann beides auswählen)
-
Benutze eine QButtonGroup, um die 1-1 und 1-2 zu gruppieren sowie 2-1 und 2-2. Des weiteren eine buttongroup um 1 und 2 zu gruppieren.
Wenn 1 angeklickt wurde setzt du widget 2 enabled = false, wenn 2 angeklickt wurde eben widget 1.So in etwa?
-
Wie gesagt, QButtonGroup existiert in QT4 nicht...
aber ich habs schon hinbekommen
-
Ach echt?
Meine güte, ich habs mit geisterklasse zu tun...
-
Naja dann klick mal auf
"Qt 3 support members" auf deiner Seite!Man muss nämlich die Libs für den Qt3 support compilieren und installieren....aus einigen Gründen geht das eber nicht!
-
void insert ( QAbstractButton * b )
void remove ( QAbstractButton * b )Das sind die beiden methoden, die zum Q3 support gehören. Komplette klassen die zum Q3 support gehören fangen mWn alle mit "Q3..." an.
QButtonGroup ist eine reguläre klasse von Qt4, die im zuge von Qt 4.1 und 4.2 auch noch neue methoden bekommen hat. Die hätte sie wohl kaum bekommen, wenn es eine Q3 klasse wäre, oder?
-
Bei mir kommt auf jedenfall ein Linker Fehler wenn ich diese Klasse includiere..
-
Dann haste wohl was falsch gemacht
-
Naja egal funktioniert ja jetzt,
aber ich hab ein anderes Problem:Ich habe ein klasse in der sind sämtliche GUI Elemente enthalten..
Wie kann ich denn jetzt z.b. ein MouseOverEvent abfangen, also nicht das MouseOverEvent von dem Gesamten Gui Fenster sondern nur von einzelne Elemente davon, z.b. wenn die Mouse über Tabfeld fährt??
-
Damit du die eigentlichen Mouse Events mitbekommst, kannst du die mouseMoveEvent() Funktion überschreiben.
Um dann zu prüfen ob ein bestimmtes Widget gerade unter der Mouse liegt, kannst du das direkt mit underMouse() abfragen.