Le 17/04/11 15:17, Sarah Mount a écrit :
Hi everyone,
I have a main application window that I want to style with a style
sheet like this:
#mywidget {
background : white;
background-image : url(:/images/images/EfDChancoComposite.jpg);
background-repeat : no-repeat;
}
When the project is created, the widget that I want to apply the CSS
to becomes an MDI area, so presumably the styling now needs to apply
to the MDI area, not the original widget, like this:
class MyMainWindow(QtGui.QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
QtGui.QMainWindow.__init__(self)
self.setupUi(self)
self.mdi = QtGui.QMdiArea()
self.mdi.setStyleSheet("QMdiArea { background : white;
background-image : url(:/images/images/EfDChancoComposite.jpg);
background-repeat : no-repeat; }")
self.setCentralWidget(self.mdi)
...but that doesn't work! Is this because QMdiArea widgets can't be
styled with CSS, and if so, is it possible to use a QBrush to do this
(including the no-repeat directive)? Or, have I just misunderstood the
API?
Many thanks,
Sarah
Hi,
You can use setBackground()
self.brush = QtGui.QBrush(QtGui.QPixmap("view.jpg"))
self.mdi.setBackground(self.brush)
but reimplement sizeEvent() for rescale the pixmap
|
_______________________________________________
PyQt mailing list [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt