2011-09-08 113 views
2

我正在使用PyQT4爲潛在客戶創建示例應用程序。我正在尋找一些方法來爲特定的小部件添加邊框。請給我一些指示來尋找。如何在QWidget周圍添加邊框?

更新:

class CentralWidget(QtGui.QWidget): 

    def __init__(self, mainWindow): 
     super(CentralWidget, self).__init__() 

     self.create(mainWindow) 

上面的代碼定義窗口小部件。

+0

什麼樣的部件是什麼? –

+0

@stephen:請參閱更新代碼 –

回答

7

根據樣式表文檔,QWidget不支持border屬性。

你必須使用像一個QFrame:

這是一個完整的例子

from PyQt4 import QtGui,QtCore 

class CentralWidget(QtGui.QFrame): 

    def __init__(self, *args): 
     super(CentralWidget, self).__init__(*args) 
     self.setStyleSheet("background-color: rgb(255,0,0); margin:5px; border:1px solid rgb(0, 255, 0); ") 

if __name__ == '__main__': 
    import sys 
    app = QtGui.QApplication(sys.argv) 
    mw = QtGui.QMainWindow() 
    w = CentralWidget(mw) 
    mw.setCentralWidget(w) 
    mw.show() 
    w.show() 
    app.exec_() 
+1

設置QTFrame的樣式表爲所有子窗口小部件設置所有相同樣式。看起來'QFrame'' setFrameStyle()'方法運行良好。 –

+2

您可以在樣式表字符串中添加一個選擇器,以僅定位一類窗口小部件,例如'「QFrame {background-color:rgb(255,0,0);}」' –

相關問題