2016-02-12 14:59 GMT+01:00 Elvis Stansvik <elvst...@gmail.com>: > Hi all, > > I have a very basic item delegate which opens up a custom editor: > > class MineralLevelsDelegate(QStyledItemDelegate): > > def createEditor(self, parent, option, index): > return MineralLevelsEditor(parent) > > def updateEditorGeometry(self, editor, option, index): > editor.setGeometry( > option.rect.x(), option.rect.y() + option.rect.height(), > editor.sizeHint().width(), editor.sizeHint().height()) > > What you see in updateEditorGeometry(...) above is my attempt at > making the editor show up at its preferred size (instead of being > constrained to the cell in the QTreeView I'm using). My attempt is to > use the editor's sizeHint() in the call to setGeometry(...). > > The problem seems to be that the sizeHint() or the editor is 0x0 at > that point (has not been laid out?), and consequently the editor show > up as a tiny little rect (see attached sizehint.png). I'm also > attaching hardcoded.png, which shows the editor when I instead > hardcode it to 200x100. This is kind of the look I want, but obviously > I don't want to hardcode it to 200x100, but have it use its preferred > size. > > So question is: How can I make the editor widget show up at its preferred > size?
And also, to clarify: I don't want the row of the table to change size when going into editing of an item. I just want the editor to be at its preferred size, on top of the table rows. Elvis > > Many thanks in advance. > > Elvis _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest