Wie kann ich es jetzt anstellen, dass ich meine Items nur auf gleicher Ebene verschiebe und nicht, wenn ich ein Item über ein anderes loslasse, dieses dort als Child-Item platziert wird? Es sollen also keine ChildItems möglich sein, sondern nur das verschieben der Einträge auf gleicher Ebene.
danke für die schnelle Antwort.
Deinen Lösungsansatz an sich hatte ich auch schon drüber nachgedacht.
Allerdings habe ich noch keinerlei Idee, wie ich das ganze dann umsetzen soll.
Ich habe es in einem Projekt mal so gehandhabt, das ich das dropEvent überschrieben habe. Dort habe ich dann das Item ermittelt auf das gedropt wurde und wenn es Kinder hatte, kam eine MessageBox mit dem Hinweis das das nicht geht. Dann wurde die Basisfunktion eben nicht aufgerufen, that's it.
Am Besten wäre es, wenn man den QTreeWidgetItem(s) irgendwie sagen könnte, dass es garnicht erst Drops akzeptieren soll. Sprich: Der User erst garnicht die Möglichkeit hat, soweit zu kommen. Sondern dass er nur innerhalb der Ebene verschieben kann.
Das ist abhängig von den Umständen. Bei mir konnte man nur bestimmte Items in andere Zweige verschieben und da wäre mal ein Plus, mal ein Verbotsschild, als Indikator verwirrend gewesen.
In deinem Falle musst Du dragMoveEvent überschreiben. Schau dir das draggableicons-Example an und du siehst wie es geht.