[PyQt] Bug in QWidget.geometry()?
Nathan Weston
nathan at genarts.com
Wed Feb 29 16:29:38 GMT 2012
According to the Qt docs, QWidget.geometry() should return the geometry
of the widget itself, not including the window border. But I'm finding
that's not the case -- geometry() is including the borders and returning
the same value as frameGeometry().
However, setGeometry() behaves as documented, which has the interesting
side effect that window.setGeometry(window.geometry()) moves the window!
I'm using Qt 4.8.0 and PyQt 4.9 on Windows 7.
The attached test program demonstrates the problem. I use move() (which
*does* account for window borders) to position the window at the upper
left of the screen. But then a call to self.setGeometry(self.geometry())
moves the window off screen.
Interestingly, the value of geometry() is the same before and after the
call to setGeometry(), despite the fact that the window has moved on screen.
--
. . . . . . . . . . . . . . . . . . . . . . . . .
Nathan Weston nathan at genarts.com
GenArts, Inc. Tel: 617-492-2888
955 Mass. Ave Fax: 617-492-2852
Cambridge, MA 02139 USA www.genarts.com
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: geometry-bug.py
URL: <http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20120229/af4477a8/attachment.ksh>
More information about the PyQt
mailing list