<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#ffffff">
Le 17/04/11 16:36, Sarah Mount a écrit :
<blockquote
cite="mid:BANLkTimnX=tPewitoiFitxL2BsXAaY0DWQ@mail.gmail.com"
type="cite">
<pre wrap="">On Sun, Apr 17, 2011 at 15:28, Vincent Vande Vyvre
<a class="moz-txt-link-rfc2396E" href="mailto:vincent.vandevyvre@swing.be"><vincent.vandevyvre@swing.be></a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">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
</pre>
</blockquote>
<pre wrap="">
Thanks, tried that code and the image doesn't appear :( There's no
traceback so it's difficult to figure out why...
Sarah
</pre>
</blockquote>
Strange, if I use this code that works:<br>
<br>
class MyMainWindow(QtGui.QMainWindow):<br>
def __init__(self, parent=None):<br>
QtGui.QMainWindow.__init__(self)<br>
self.mdi = QtGui.QMdiArea()<br>
self.setCentralWidget(self.mdi)<br>
pix = QtGui.QPixmap("img.jpg")<br>
self.brush = QtGui.QBrush(pix)<br>
self.mdi.setBackground(self.brush)<br>
<br>
PyQt 4.7.0 on Linux<br>
<br>
<div class="moz-signature">-- <br>
Vincent V.V.<br>
<a href="https://launchpad.net/oqapy">Oqapy</a></div>
</body>
</html>