Seite 1 von 1

Qt3: Text mit Musterung

Verfasst: 10. Juli 2006 10:55
von irreriwan
Hallo zusammen

Ich habe ein kleines Problem mit Qt3. Für ein Projekt brauche ich SoftButtons welche wahlweise Symbole oder Text darstellen können.
Die Buttons können aktiv und inaktiv sein. Inaktiv bedeutet, dass der Text/das Symbol in einem Rastermuster erscheint. Seht euch dazu auch das angefügte MusterBild an (oben aktiv, unten inaktiv).

Zum Aufbau:
Die SoftButtons sind von QWidget abgeleitet. Gezeichnet werden diese mit einem QPainter.
Prinzipiell wird der Softbutton wie folgt gezeichnet:

Code: Alles auswählen

QPainter painter(this);
painter.setFont(*StandardFont); //Vordefinierter Font
painter.setPen(*StandardPen); // Vordefinierter Pen
painter.drawText(x, y, ButtonLabel);
Leider gelingt es mir nun aber nicht den Text/das Symbol im inaktiven Modus mit dem Rastermuster zu versehen.
In einem ersten Anlauf versuchte ich dem Painter den Brushstyle zu setzen

Code: Alles auswählen

painter.setbrush(Qt::DiagCrossPattern)
Nützte leider nichts...

Im zweiten Anlauf setzte ich den Penstyle:

Code: Alles auswählen

painter.setPen(Qt::DotLine)
Leider ebenfalls Fehlanzeige...

Weitere Wege habe ich bis jetzt nicht gefunden, vielleicht weiss mir aber ja einer von euch ne Lösung.

gruss iwan

Verfasst: 10. Juli 2006 11:28
von Nassian
Versuch mal ob ein
button->setEnabled( false );
bei dem Style den gewünschten Effekt bringt.

SG Alex

Verfasst: 10. Juli 2006 11:37
von irreriwan
@Alex
Die Idee wäre an sich nicht schlecht, doch wie gesagt, ich erbe direkt von QWidget und nicht von QButton, daher funzt das leider nicht.

Verfasst: 10. Juli 2006 14:01
von macman
Von wem mag QButton wohl setEnabled() erben?

Verfasst: 10. Juli 2006 14:07
von irreriwan
macman hat geschrieben:Von wem mag QButton wohl setEnabled() erben?
Damn...
Irgendwie ist der QtAssistant von Qt3 nicht gerade übersichtlich :(

btw: Funktionieren tut dieser Lösungsansatz gleichwohl nicht....