Qt 設置QLabe中字體的顏色(轉)

(在可視化模式下修改是很簡單的 現選中要修改的label 然後按下圖所示)



其他的可參考以下說明


http://blog.csdn.net/qter_wd007/article/details/5919006

最近有同學問,如何使用Qt4,設置QLabel中字體的顏色。


其實,這是一個比較常見的問題。大致有幾種做法:一是使用setPalette()方法;二是使用樣式表;三是可以使用QStyle;四是可以在其中使用一些簡單的HTML樣式。下面就具體說一下,也算是個總結吧。

 

第一種,使用setPalette()方法如下:

 

...

QLabel *label = new QLabel(tr("Hello Qt!"));

QPalette pe;
pe.setColor(QPalette::WindowText,Qt::white);
label->setPalette(pe);

 QPalete::Window,通常指窗口部件的背景色;

  QPalette:WindowText,通常指窗口不見的前景色;

  QPalette::Base,指文本輸入窗口部件(比如QtextEdit,QLinedit等)的背景色.

  QPalette::Text,與QPalette::Base一塊使用,指文本輸入窗口部件的前景色;

  QPalette::Button,指按鈕窗口部件的背景色;

  QPalette::ButtonText,指按鈕窗口部件的前景色.


第二種,使用樣式表如下:

 

setstylesheet(font-color:your color);

 

//具體情形可以看Qt Assistant

 

第三種,使用QStyle,在Qt Demo中有一個很好的講解QStyle的例子,可以參考學習。

 

第四種,使用一些簡單的HTML格式:

 

QLabel *label = new QLabel(tr("Hello Qt!"));

QLabel *label = new QLabel("<h2><i>Hello</i><font color=red>Qt!</font></h2>");

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章