On Mon Sep 17 16:28:34 BST 2007, Nicolas Girard wrote:

> class Window(QtGui.QMainWindow):
>     def __init__(self, parent=None):
>         QtGui.QWidget.__init__(self, parent)
>         self.tree = QtGui.QTreeView(self)
>         model = QtGui.QDirModel()
>         self.setModel(model)
>     def setModel(self,model):
>         tree=self.tree
>         tree.setModel(model)
>         tree.resize(640, 480)

The model is created in a local Python scope without a QObject-derived
parent, so it is destroyed when execution leaves __init__(). The view
does not take ownership of the model because many views could be sharing
the same model.

Your other example kept the model in global scope, so it was only
destroyed when the program exited.

David
_______________________________________________
PyQt mailing list    [email protected]
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to