html集成Qstring的样式

时间:2015-08-14 11:01:05

标签: html css qt qstring

我有QSting对象:

 QString someString = "<a href='link'>some text</a>"

和QLabel对象:

QLabel someLabel.

用这个文字:

someLabel.setText(someString);

我为QLabel设置了属性:

someLabel.setProperty("class","someID"), 

并在CSS文档中为此标签设置样式,如下所示:

 #someID 
 { 
    // some style
 }

但CSS的样式并未应用于Label的文本。它从css。

设置默认的蓝色下划线样式

问题:如何从CSS设置样式?

2 个答案:

答案 0 :(得分:0)

您可以尝试通过setStyleSheet()方法设置样式表。

可以找到示例here

答案 1 :(得分:0)

要做的重要区别是,有两个完全独立的样式系统会影响QLabel的作用:

  1. 通过setStyleSheet()方法在小部件上设置的CSS样式表。

    在这些样式表中,#选择对象的id - 其名称。因此,您应该设置对象的名称,而不是类属性:

    someLabel.setObjectName("someId");
    

    然后#someId选择器将应用于someLabel

  2. CSS样式属性应用于标签显示的富文本内容。这些可以通过内联style属性提供,例如<span style="font-size: 20px">FOO</span>。还支持<style>中的<html>元素,但不支持外部样式表 - 因此样式表必须位于<html>内。支持所有CSS 2.1选择器。例如,

    <html><style type="text/css">em {color: red}</style>
      <body><em>URGENT!</em></body>
    </html>