2010-07-31 34 views
7

tengo una escena con múltiples (QGraphicsTextItem) s, y necesito tener control sobre sus colores, entonces, ¿cómo cambiar el color de un QGraphicsTextItem? ¿es posible de todos modos? Lo he estado intentando durante 3 días hasta ahora. por favor ayudacómo cambiar el color de un QGraphicsTextItem


gracias de antemano

Respuesta

6

creo que se puede cambiar el color del texto llamando al método:

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

Tienes un ejemplo here.

O buscando Diagram Scene Ejemplo en su Qt Assistant.

1

setDefaultTextColor (col) "Establece el color para texto sin formato a col". La documentación no es clara sobre lo que significa "texto sin formato". Creo que significa: "todas las partes del contenido del artículo que no se han diseñado".

El contenido es un QTextDocument.

Pestaña una parte de un documento con un QTextCursor. No se puede estilo de la QTextDocument per se, sólo una parte que es seleccionado por un QTextCursor (pero puede seleccionar todo el documento.)

Puede estilo de un QTextCursor utilizando el método mergeCharFormat (QTextCharFormat)

El QTextCharFormat tiene métodos:.

  • primer plano() setColor (QColor)
  • setForeground (QBrush)
  • setTextOutline (QPen)

primer plano es un QBrush que pinta varias cosas incluyendo "texto" (pero mejor dicho: el relleno de caracteres)

Un matiz es que ciertos QBrush de nueva construcción tiene (por defecto) QBrushStyle.NoBrush, que es transparente , incluso si estableceColor().

Cuestiones relacionadas