2010-07-31 19 views
7

Ich habe eine Szene mit mehreren (QGraphicsTextItem) s, und ich muss die Kontrolle über ihre Farben haben, also, wie man eine Farbe eines QGraphicsTextItem ändert? ist das überhaupt möglich? Ich habe es seit 3 ​​Tagen versucht. bitte helfenWie ändere ich die Farbe eines QGraphicsTextItems


Dank im Voraus

Antwort

6

Ich glaube, Sie die Textfarbe durch Aufruf der Methode ändern können:

void QGraphicsTextItem::setDefaultTextColor (const QColor & col);

Sie haben ein Beispiel here.

Oder suchen Sie Diagramm Szene Beispiel in Ihrem Qt-Assistent.

1

setDefaultTextColor (col) "Setzt die Farbe für unformatierten Text auf col." In der Dokumentation ist nicht klar, was "unformatierter Text" bedeutet. Ich denke, es bedeutet: "alle Teile des Inhalts des Artikels, die nicht gestylt wurden."

Der Inhalt ist ein QTextDocument.

Sie formatieren einen Teil eines Dokuments mit einem QTextCursor. Sie können nicht die QTextDocument per se, nur einen Teil Stil, der von einem QTextCursor ausgewählt ist (aber Sie können das gesamte Dokument auswählen.)

Sie können eine QTextCursor mit der Methode mergeCharFormat Stil (QTextCharFormat)

Die QTextCharFormat Verfahren aufweist:.

  • Vordergrund() setColor (QColor)
  • setForeground (QBrush)
  • setTextOutline (QPen)

Vordergrund ist ein QBrush, die mehrere Dinge wie „Text“ malt (aber besser gesagt: die Füllung der Zeichen)

Eine Nuance ist, dass bestimmte neu gebauten QBrush haben (standardmäßig) QBrushStyle.NoBrush, die transparent ist , auch wenn Sie Color() setzen.

Verwandte Themen