Bonjour,

je vous explique mon cas, c'est un peu complexe.

Je dispose d'une classe qui herite de QstandardItem:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
class BaliseXml(QStandardItem):
	XmlTag = str()
	XmlText = str()
	XmlAttrib = {}
	def __init__(self, tag, text, attrib):
		QStandardItem.__init__(self)
		self.setData(tag, Qt.DisplayRole)
		self.XmlTag = tag
		self.XmlText = text
		self.XmlAttrib = attrib
J'ai utiliser cette classe pour peupler un QStandardItemModel, que j'ai attribué en Model a un un TreeView.

Donc j'ai essayé de parcourir mes objets (en tant que ma classe, pour avoir acces a mes infos stockées) ca fonctionne.

Puis j'ai autorisé les mouvement drag'n'drop dans ce treeview :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
self.ui.treeView.setDragDropMode(QAbstractItemView.InternalMove)
Mais la j'ai un probleme. En effet lors d'un drag'n'drop je pense que Qt cree un nouvel objet de type QStandardItem et supprime l'ancien au lieux de deplacer l'ancien.

du coup, je ne sais pas comment palier cela, ce que je souhaite c'est qu'on puisse deplacer les elements du model, mais que leur type sois gardé.

J'espere que c'est assez clair...

Merci d'avance.

Cordialement,