gpt4 book ai didi

c++ - 如何从 qplaintextedit 获取文本颜色?

转载 作者:行者123 更新时间:2023-11-30 02:59:18 25 4
gpt4 key购买 nike

我想从纯文本中获取文本颜色。我可以使用 charFormat() 获取 fontWeight 和其他格式,但是当我调试前景色时,它被设置为无颜色!!?

请帮帮我....

示例代码:

QTextCursor c = textCursor();
QTextCharFormat result = c.charFormat();

if (result.fontWeight() == QFont::Bold)
qDebug() << "bold text"; //worked
else if (result.fontWeight() == QFont::Normal)
qDebug() << "normal text"; //worked

if (result.foreground().color() == Qt::green)
qDebug() << "green"; //not worked !!
else if (result.foreground().color() == Qt::blue)
qDebug() << "blue"; //not worked !!
else
qDebug() << "no color !!";

腾讯

最佳答案

如果您使用 Qt4,则必须使用 QPalette 类。 QPalette 为 GUI 上的不同实体(文本颜色、背景等)存储不同的颜色。它继承自父小部件,但可以针对您拥有的每个小部件进行更改。

QPlainTextEdit *pteEdit; // your text edit
QPalette palette = pteEdit->palette();
QColor textColor = palette.color( QPalette::WindowText );

阅读 QPalette 文档。它可能是不同的颜色角色,具体取决于小部件类型并且有子类型。对于非事件文本、普通文本等。

关于c++ - 如何从 qplaintextedit 获取文本颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12996236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com