[PyKDE] QObject.findChildren doesn't work as expected with QRegExp
Phil Thompson
phil at riverbankcomputing.co.uk
Fri Mar 2 22:32:21 GMT 2007
On Friday 02 March 2007 2:53 am, Kerri Reno wrote:
> I have the following code:
>
> def testfindChildren(self):
> hLayout = QtGui.QHBoxLayout()
> hLayout.setObjectName('hLayout_0')
> self.searchLayout.addLayout(hLayout)
>
> print self.findChild(QtGui.QHBoxLayout,'hLayout_0')
> children = self.findChildren(QtGui.QHBoxLayout,QtCore.QRegExp('\w*'))
> for c in children:
> print c.objectName()
> print self.findChildren(QtGui.QHBoxLayout,QtCore.QRegExp('hLayout_\d'))
>
>
> that gives me the following output:
>
> <PyQt4.QtGui.QHBoxLayout object at 0x019F0B70>
> hLayout_0
>
> []
>
> The first line is returned from the findChild, the second (hLayout_0)
> and third (blank line) are returned from print c.objectName().
>
> The one I need, findChildren with a QRegex does not return hLayout_0 in
> the list. Am I doing something wrong here? Is this a bug? I can't see
> anything in the docs that explains what's happening.
The escaping is certainly wrong - try using raw strings.
Otherwise post a complete example that demonstrates the problem.
Phil
More information about the PyQt
mailing list