2010-06-05 132 views
3

我正在使用垂直佈局(QVBoxLayout)來管理按鈕。我想讓它的背景色爲50%黑色透明。可能嗎 ?QT透明佈局

SW

回答

2

恩...它已經有一段時間,因爲我使用Qt的,但據我所知,QVBoxLayout沒有背景色,所以不,這是不可能的。佈局不是一個小部件,它根本不被繪製,它只管理子部件的大小。

如果你想創建彩色佈局,你可能需要創建一個你想要的任何顏色的小部件,然後將父QVBoxLayout創建到該小部件。

如果要讓所有佈局的子項的顏色受到QVBoxLayout父項的顏色的影響,它會變得更有趣,但我認爲Qt4演示中的「嵌入式對話框」演示可能會給你一個關於如何完成的想法。

4

根據您想要的透明區域的邊界,你將需要組中的插件的按鈕(如SIGTERM說的),然後你可以指定一個顏色或者通過調色板

QPalette palette = widget->palette(); 
palette.setColor(QPalette::Window, QColor(100,100,100,100)); 
widget->setPalette(palette); 

或使用樣式表

widget->setStylesheet("QWidget{background-color: rgba(100,100,100,100);}"; 

樣式表的優點是,你可以從一個地方,是不是在代碼風格的所有應用程序,並通過QApplication::setStylesheet(QString)

設置程序範圍的樣式表10