Link-Farbe ändern

Alles rund um die Programmierung mit Qt
Antworten
wlas
Beiträge: 4
Registriert: 30. April 2009 20:12

Link-Farbe ändern

Beitrag von wlas »

Ich benutze in meinem Info-Fenster ein Link auf die Web-Seite:

Code: Alles auswählen

    QLabel *lblWeb = new QLabel;
    lblWeb->setText("<a href='http://www.qtforum.de'>http://www.qtforum.de</a>");
    lblWeb->setOpenExternalLinks(true);
Der Text wird wie erwartet in Blau und unterstrichen dargestellt. Leider passt die Farbe nicht zu meinem Design. Über StyleSheet kriege ich bei einem Link die Farbe auch nicht angepasst:

Code: Alles auswählen

lblWeb->setStyleSheet("QLabel {color: #bbb;}");
Wie soll ich dieStyleSheet Anweisung setzen, damit eine andere Farbe aktiv wird? Oder gibt es eine andere Lösung dafür?
archer
Beiträge: 306
Registriert: 2. Februar 2006 09:56

Beitrag von archer »

Probier es über die Palette (QPalette).
In der Palette die Farben für Link und LinkVisited setzen und dann dem Label zuweisen.
wlas
Beiträge: 4
Registriert: 30. April 2009 20:12

Beitrag von wlas »

Vielen Dank für die Antwort! Ich habe jetzt mit der QPalette versucht:

Code: Alles auswählen

    QPalette qpal;
    qpal = lblWeb->palette();
    qpal.setColor(QPalette::Link,QColor(Qt::black));
    qpal.setColor(QPalette::LinkVisited,QColor(Qt::black));
    lblWeb->setPalette(qpal);
Erstaunlicherweise blieb die Link-Farbe weiterhin Blau. Was habe ich beim Einsatz von der QPalette falsch gemacht?
archer
Beiträge: 306
Registriert: 2. Februar 2006 09:56

Beitrag von archer »

Das sieht alles richtig aus, aber vielleicht mußt du die Farbe doch selber setzen in einem Slot für das signal linkActivated (const QString&) von QLabel.
Antworten