Wie ändere ich nur die Schriftart des Titels einer QGroupBox?

8

Ich möchte den Titel QGroupBox fett formatieren, andere bleiben unverändert. Wie ändere ich nur die Schriftart eines QGroupBox Titels?

    
user1899020 06.03.2014, 14:28
quelle

2 Antworten

12

Schrifteigenschaften werden von Eltern zu Kind geerbt, wenn sie nicht explizit festgelegt werden . Sie können die Schriftart von QGroupBox über die Methode setFont() ändern. Sie müssen jedoch die Vererbung aufheben, indem Sie die Schriftart für die untergeordneten Elemente explizit zurücksetzen. Wenn Sie dies nicht für jedes einzelne untergeordnete Element (z. B. für jedes QRadioButton ) separat festlegen möchten, können Sie ein Zwischenwidget hinzufügen, z. etwas wie

%Vor%

Beachten Sie außerdem, dass beim Zuweisen einer neuen Schriftart zu einem Widget "die Eigenschaften dieser Schriftart mit der Standardschriftart des Widgets kombiniert werden, um die endgültige Schriftart des Widgets zu erstellen".

Ein noch einfacherer Ansatz ist die Verwendung von Stylesheets - anders als bei CSS und im Gegensatz zur normalen Vererbung von Schrift und Farbe, Eigenschaften aus Stylesheets sind nicht geerbt :

%Vor%     
Andreas Fester 06.03.2014, 14:50
quelle
0

Die obige Antwort ist richtig. Hier sind ein paar zusätzliche Details, die hilfreich sein können:

1) Ich habe in

gelernt

Setzen Sie die Schriftgröße der QGroupBox-Titel mit Stylesheets

Das QGroupBox::title unterstützt keine Schrifteigenschaften, daher können Sie die Titelschrift nicht auf diese Weise festlegen. Sie müssen es wie oben beschrieben tun.

2) Ich finde die Methode setStyleSheet() etwas stromlinienförmiger als mit QFont . Das heißt, Sie können auch Folgendes tun:

%Vor%     
dunedin15 23.08.2016 14:38
quelle

Tags und Links