Hallo Leute
In meiner PySide6 GUI verwende ich ein QTextEdit.
Der Text wird mit verschiedenen Vorder- und Hintergrundfarben angezeigt.
Wenn ich jedoch den Text markiere, wird der markierte Text vollständig schwarz-blau angezeigt.
Ich möchte aber, dass sich die Auswahl nur über den Text drüberlegt, wie man das von Word kennt.
Wie kann ich das anstellen?
QTextEdit: Auswahl überschreibt Text Style
Hallo Fire Spike,
kannst du ein Beispiel zeigen, der genau das beschriebene Verhalten demonstriert?
Vermutlich musst du Vorher- und Hintergrundfarbe unterschiedlich wählen, sonst siehst du einen "einfarbigen Block".
kannst du ein Beispiel zeigen, der genau das beschriebene Verhalten demonstriert?
Vermutlich musst du Vorher- und Hintergrundfarbe unterschiedlich wählen, sonst siehst du einen "einfarbigen Block".
MorgenGrauen: 1 Welt, 8 Rassen, 13 Gilden, >250 Abenteuer, >5000 Waffen & Rüstungen,
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
-
- User
- Beiträge: 329
- Registriert: Montag 13. Mai 2019, 16:05
- Wohnort: Erde
Code: Alles auswählen
from PySide6.QtWidgets import QApplication, QMainWindow, QTextEdit
from PySide6.QtCore import QRect
import sys
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.text_entry = QTextEdit(self)
self.text_entry.setGeometry(QRect(0, 0, 917, 670))
self.text_entry.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\np, li { white-space: pre-wrap; }\nhr { height: 1px; border-width: 0; }\nli.unchecked::marker { content: \"\\2610\"; }\nli.checked::marker { content: \"\\2612\"; }\n</style></head><body style=\" font-family:'Segoe UI'; font-size:9pt; font-weight:400; font-style:normal;\">\n<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'MS Sans Serif'; color:#ffffff; background-color:#000000;\">I'm black</span></p>\n<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'MS Sans Serif';\">I'm white</span></p>\n<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'MS Sans Serif'; color:#6cdfff; background-color:#ff8649;\">I'm colorful</span></p></body></html>")
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec())
Du meinst eher unterlegt, nicht drueberlegt, so als ob das mit Textmarker gemacht wuerde? Ich vermute, das geht nicht. Ich finde jedenfalls nur selection-background-color und Co, und die kennen keine wie von dir hier letztlich geforderte dynamische Veraenderung der Vordergrundfarbe, weil sonst zB gelber Grund mit weisser Schrift nicht geht.
In Word ist es so:
Ich habe 5 Worte mit 5 verschiedenen Schriftfarben auf weißem Grund.
Wenn ich alles markiere, ändert sich die Hintergrundfarbe von weiß zu hellgrau.
Es ändert sich aber nicht die Schriftfarbe. Das bleiben die 5 verschiedenen Farben.
Stimmt nicht ganz, weil sich die Farben auch (ein bisschen) abdunkeln, aber so ungefähr.
Also wenn man vorher weiße Schrift auf weißem Grund hat, erhält man genau so unsichtbare hellgraue Schrift in der Auswahl.
Ich habe 5 Worte mit 5 verschiedenen Schriftfarben auf weißem Grund.
Wenn ich alles markiere, ändert sich die Hintergrundfarbe von weiß zu hellgrau.
Es ändert sich aber nicht die Schriftfarbe. Das bleiben die 5 verschiedenen Farben.
Stimmt nicht ganz, weil sich die Farben auch (ein bisschen) abdunkeln, aber so ungefähr.
Also wenn man vorher weiße Schrift auf weißem Grund hat, erhält man genau so unsichtbare hellgraue Schrift in der Auswahl.
MorgenGrauen: 1 Welt, 8 Rassen, 13 Gilden, >250 Abenteuer, >5000 Waffen & Rüstungen,
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.