Seite 1 von 1
QGroupBox Titel Schrift
Verfasst: Donnerstag 19. Januar 2023, 16:23
von GiJay
Moin,
wie kann ich die Schrift (Farbe, Größe) des Titels einer GrouBox ändern?
Code: Alles auswählen
group_adress_layout = QGroupBox("Persönliche Daten")
group_adress_layout.setStyleSheet('color: rgb{}'.format(str(textcolor_k)) + '; font-size: 14px; font-weight: bold;')
So ändere ich die ganze Groupbox ... mit "QGroupBox.title" hatt ich leider keinen Erfolg
Merci !
Re: QGroupBox Titel Schrift
Verfasst: Donnerstag 19. Januar 2023, 16:32
von __deets__
Re: QGroupBox Titel Schrift
Verfasst: Donnerstag 19. Januar 2023, 18:18
von Axel-WAK
Ich denke im StyleSheet kannst Du keine Variablen verwenden. (textcolor_k) StyleSheet ist ccs.
Re: QGroupBox Titel Schrift
Verfasst: Donnerstag 19. Januar 2023, 23:11
von __deets__
@Axel: man kann schon styles setzen, die berechnet sind. Das Ergebnis ist dann ja ein normales Stylesheet.
Re: QGroupBox Titel Schrift
Verfasst: Freitag 20. Januar 2023, 10:27
von Axel-WAK
Du hast recht.
Da es scheinbar um die Titelschrift der GroupBox geht sollte vielleicht
QGroupBox::title verwendet werden, vielleicht so
Code: Alles auswählen
setStyleSheet("QGroupBox::title { color: rgb{}'.format(str(textcolor_k)) + '; font-size: 14px; font-weight: bold;}")
Re: QGroupBox Titel Schrift
Verfasst: Freitag 20. Januar 2023, 11:09
von Axel-WAK
Das funktioniert
Code: Alles auswählen
textcolor_k = "#26a269"
groupbox.setStyleSheet(f"color: {textcolor_k}; font-size: 14px; font-weight: bold;")
Re: QGroupBox Titel Schrift
Verfasst: Freitag 20. Januar 2023, 12:12
von GiJay
Axel-WAK hat geschrieben: Freitag 20. Januar 2023, 10:27
Da es scheinbar um die Titelschrift der GroupBox geht sollte vielleicht
QGroupBox::title verwendet werden, vielleicht so
Code: Alles auswählen
setStyleSheet("QGroupBox::title { color: rgb{}'.format(str(textcolor_k)) + '; font-size: 14px; font-weight: bold;}")
Das funktioniert leider nicht, aber die Idee war gut.
Das hier funktioniert:
Code: Alles auswählen
#group_adress_layout.setStyleSheet("QGroupBox::title {color: rgb(0, 0, 255);}")
Bei einem QLabel funktioniert auch eine Variable:
Code: Alles auswählen
headline.setStyleSheet('color: rgb{}'.format(str(textcolor_k)) + '; font-size: 20px; font-weight: bold;')
Aber leider nicht bei einer GroupBox:
Code: Alles auswählen
group_adress_layout.setStyleSheet('QGroupBox::title (color: rgb{}'.format(str(textcolor_k));)
Verstehen tue ich es jedoch nicht.
Re: QGroupBox Titel Schrift
Verfasst: Freitag 20. Januar 2023, 12:39
von grubenfox
Was zeigt denn
Code: Alles auswählen
print('color: rgb{}'.format(str(textcolor_k)) + '; font-size: 20px; font-weight: bold;')
und
Code: Alles auswählen
print('QGroupBox::title (color: rgb{}'.format(str(textcolor_k));)
?
Vermutlich nur copy&paste-Fehler. Das zweite läuft bei mir auf "Syntaxfehler", das erste liefert zwar einen String, der aber nicht so aussieht wie ich das von CSS gewohnt bin und das QT-Zeug hier [kenne ich nun gar nicht] scheint sich hier sehr an CSS zu orientieren.
Re: QGroupBox Titel Schrift
Verfasst: Freitag 20. Januar 2023, 16:08
von GiJay
Also dies funktioniert bei mir aktuell in: QListWidget, QLabel, QGroupBox
Code: Alles auswählen
self.leftlist = QListWidget()
self.leftlist.setStyleSheet('color: rgb{}'.format(str(textcolor_k)) + '; font-size: 18px; font-weight: bold;')
Code: Alles auswählen
headline = QLabel("Kontakt 'Neu'")
headline.setStyleSheet('color: rgb{}'.format(str(textcolor_k)) + '; font-size: 20px; font-weight: bold;')
... auch mit einer GroupBox, aber dann alles in der GroupBox - Überschrift, Text ...
Bei der reinen Überschrift von QGroupBox funtioniert es nicht. Es gibt auch keine Fehlermeldung :
Code: Alles auswählen
group_suche_layout = QGroupBox("Suche")
group_suche_layout.setStyleSheet('QGroupBox::title color: rgb{}'.format(str(textcolor_k)) + '; font-size: 20px; font-weight: bold;')
Das jedoch funktioniert bei der reinen Überschrift:
Code: Alles auswählen
group_suche_layout.setStyleSheet("QGroupBox::title {color: rgb(0, 0, 255);}")
Re: QGroupBox Titel Schrift
Verfasst: Mittwoch 8. Februar 2023, 12:16
von GiJay
... zum Abschluss. So funzt es:
Code: Alles auswählen
group_adress_layout.setStyleSheet(f'QGroupBox::title {{color: rgb{textcolor_k};}}')
Vielen Dank an alle Beteiligten
