Qt: stylesheets in QTextEdit
-
Ich benutze ein QTextEdit für eine konsolenartige ausgabe. Allerdings soll auch formatierung möglich sein, ich versuche das in Html. für die einzelnen formate übermittle ich daher als erstes einen stylesheet an das QTextEdit, danach wird der Text schrittweise eingefügt, wie bei einer konsole halt ;).
Das Problem: Der Stylesheet, der eingefügt wurde, wird nur angewendet auf den Text, der im gleichen schritt hinzugekommen ist. Alles was in neuen aufrufen kommt, kennt den stylesheet nicht mehr. Is das absicht von Qt?
console->insertHtml("<style type=\"text/css\">" "action{font-style:italic;}" "</style>" "<action>Tadaaa</action><br />"); // wird formatiert console->insertHtml("<action>heiadei</action>"); // wird NICHT formatiert
-
Ich nehme an, dass der Textedit da irgendwie verschiedene Bereiche hat.. Kannst es ja an Trolltech reporten.
Als Workaround kannst du ne Klasse machen die von QTextEdit erbt oder wrappt. Mit Funktionen wie setFormating oder so. Dann einfach vor den einzufuegenden Text prependen. Nicht so perfomant, sollte aber funktionieren..
Hmm, ..
Ich nehme an, du hast in der Qt Doku nach setFormating etc gesucht..
-
aMan schrieb:
Hmm, ..
Ich nehme an, du hast in der Qt Doku nach setFormating etc gesucht..wie kommst du darauf?
-
Die Leute im Forum sind normalerweise nicht dazu da, einem die Doku vorzukauen..
Bevor du also fragst, wuerde ich immer in der Doku und bei Googl suchen..
Probier vielleicht mal setHtml ( const QString & text )
-
ich habe es mittlerweile gelöst. Per document()->setDefaultStyleSheet().
PS: setHtml geht genau so wenig.
PPS: Ich habe eig nur gefragt, wie du drauf kommst, weil in der doku nirgends dieser Begriff auftaucht.
PPPS: Trotzdem danke