6

我使用了一个库,它使用 QPalette::Link 和 QPalette::LinkVisited 的颜色作为小部件的背景和边框颜色。我想用样式表改变这些颜色。如何在样式表的帮助下设置 Link 和 LinkVisited 的颜色?

我读过,qt 不支持链接的 LinkVisited 选项。但在我的情况下,这两种颜色都不是用于链接,而是用于小部件的某些部分。

我想使用样式表而不是设置 QPalette 的颜色。但似乎不可能用样式表设置颜色。这是真的吗?

我想为小部件设置颜色。我可以使用这段代码:
QPalette p;
p.setColor(QPalette::Link, QColor(0,255,0));
p.setColor(QPalette::LinkVisited, QColor(0, 255, 0));
pWidget->setPalette(p);

但我想对样式表做同样的事情。例如这样的:
QWidget { link-color: green; link-visited-color: green;}

4

3 回答 3

0

和你一样,我找不到使用样式表或 QPalette 的正确方法。

但是为了我控制颜色的需要,我使用了这个方法,在<span>里面设置<a>来控制颜色。

QLabel().setText('<a href="..link"><span style="color:white;">something</span>')
于 2016-10-14T22:08:28.183 回答
-1

这是设置它的错误位置。链接是文档的一部分,而不是浏览器的一部分,QWidgets 或多或少是浏览器。

于 2014-03-03T13:20:01.600 回答
-2

您可以按如下方式设置小部件的background-color&属性,忘记:colorQPallette

QWidget#yourWidgetName
{
  background-color: #ccc;
  color: #1c1c1c;
}

阅读文档AZ,它拥有处理 QT 样式表时需要的所有智慧

但是,在样式表级别设置link-color&link-visited-color是不可能的。

于 2012-11-16T14:42:04.680 回答