Widget in QTabWidget oben in der Tab leiste bringen

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Hallo

Ich möchte in der Tabliste(da wo die Tabnamen stehen) rechts ein Widget bringen.

Bild

das rote soll mein widget sein.

Wie geht das?
mit einer absoluten widget Position?

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

Was nutzt Du denn als Tab-Quelle? QTabWidget und dessen Widget-Stack?

Problem ist, daß der Bereich komplett von der Tabpräsentation belegt wird und spätestens dann, wenn Du mehr als gerade angezeigbar Tabs hast, dort die Navigationsbuttons eingeblendet werden, und das auch noch theme-abhängig.

Vllt. ist es einfacher, das Ganze mit QTabBar und QStackedWidget umzusetzen, ungefähr so:

Code: Alles auswählen

 _______________________________
|              QTabBar          | Dein
|_Tab_1_|  Tab 2  |_Tab_3_|_<_>_| Widget
|                                       |
|                                       |
|              QStackedWidget           |
|                                       |
|                                       |
|_______________________________________|
Damit könntest Du die Breite der Tab-Navigation frei definieren und so Platz für Dein Widget rechts lassen.
Benutzeravatar
Whitie
User
Beiträge: 216
Registriert: Sonntag 4. Juni 2006, 12:39
Wohnort: Schulzendorf

Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Hallo

Danke an euch beide!

Ich denke setCornerWidget ist genau richtig.

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Antworten