On Fri, 5 Mar 2010 16:09:42 +1300, Taylor Carrasco <[email protected]> wrote: > I'm trying to keep a widget put into a QTreeWidgetItem after a reparent > (drag and drop) using QTreeWidget.setItemWidget() > > But the result, if you compile the following code - is that the widget > inside the QTreeWidgetItem disappears. Any idea why? What code would fix > this (repopulate the QTreeWidgetItem with the widget again?) > > > > from PyQt4.QtCore import * > from PyQt4.QtGui import * > > > class InlineEditor (QWidget): > _MUTE = 'MUTE' > > def __init__ (self, parent): > QWidget.__init__ (self, parent) > > self.setAutoFillBackground (True) > lo = QHBoxLayout() > lo.setSpacing(4) > > self._cbFoo = QComboBox() > for x in ["ABC", "DEF", "GHI", "JKL"]: > self._cbFoo.addItem(x) > > self._leBar = QLineEdit('', self) > lo.addWidget (self._cbFoo, 3) > lo.addSpacing (5) > lo.addWidget (QLabel ( 'Bar:')) > lo.addWidget (self._leBar, 3) > lo.addStretch (5) > self.setLayout (lo) > > class Form (QDialog): > def __init__(self,parent=None): > QDialog.__init__(self, parent) > > grid = QGridLayout () > tree = QTreeWidget () > > # Here is the issue? > tree.setDragDropMode(QAbstractItemView.InternalMove) > > tree.setColumnCount(3) > > for n in range (2): > i = QTreeWidgetItem (tree) # create QTreeWidget the sub i > i.setText (0, "first" + str (n)) # set the text of the first 0 > i.setText (1, "second") > for m in range (2): > j = QTreeWidgetItem(i) > j.setText (0, "child first" + str (m)) > > #b1 = QCheckBox("push me 0", tree) # this wont work w/ drag by > itself either > #tree.setItemWidget (tree.topLevelItem(0).child(1), 1, b1) > > item = InlineEditor(tree) # deal with a combination of multiple > controls > tree.setItemWidget(tree.topLevelItem(0).child(1), 1, item) > > grid.addWidget (tree) > self.setLayout (grid) > > app = QApplication ([]) > form = Form () > form.show () > app.exec_ ()
If it's a bug then it's not a PyQt bug as a C++ test does the same thing. Phil _______________________________________________ PyQt mailing list [email protected] http://www.riverbankcomputing.com/mailman/listinfo/pyqt
