[PyQt] Bug in custom widget using QStringList when using pyuic
Phil Thompson
phil at riverbankcomputing.com
Fri Mar 12 13:37:46 GMT 2010
On Fri, 12 Mar 2010 11:23:39 +0100, Vincent van Beveren
<V.vanBeveren at rijnhuizen.nl> wrote:
> Hi everyone,
>
> I have created a custom component which uses a QStringList as property
> value. This goes fine in designer, however, when using pyuic4 to compile
> the component it messes things up. This is the python code produced:
>
> # === header removed
> class Ui_Form(object):
> def setupUi(self, Form):
> Form.setObjectName("Form")
> Form.resize(161, 161)
> self.QPyLedArray = QPyLedArray(Form)
> self.QPyLedArray.setGeometry(QtCore.QRect(12, 12, 68, 134))
>
self.QPyLedArray.setNames([<PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C590>, <PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C5D0>, <PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C5F0>, <PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C630>, <PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C690>, <PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C6F0>, <PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C750>, <PyQt4.uic.Compiler.qtproxies.i18n_string
> object at 0x00C0C790>])
> self.QPyLedArray.setVerticalMode(True)
> self.QPyLedArray.setObjectName("QPyLedArray")
>
> self.retranslateUi(Form)
> QtCore.QMetaObject.connectSlotsByName(Form)
>
> def retranslateUi(self, Form):
> Form.setWindowTitle(QtGui.QApplication.translate("Form",
> "QStringList", None, QtGui.QApplication.UnicodeUTF8))
>
> from rijnh.qt.widgets.qpyledarray import QPyLedArray
> # ===
>
> As you can see the setNames is messed up. I've useds pyQt 4.4.3 and pyQt
> 4.6. Both have the same issue. I have attached the qpyledarray.py so you
> can try to compile it. You will need to edit the qledarrayfails.ui with a
> text-editor and set the correct package.
Fixed in tonight's snapshot - thanks.
Phil
More information about the PyQt
mailing list