2012-03-13 3 views
0

Я пытаюсь сделать Drag'n'drop работу между 2 QListWidgets и на самом деле что-то сделать с потерянными данными. Например. Я создал такой класс:Как получить атрибуты отбрасываемого объекта?

class Task(QtGui.QListWidgetItem): 
def __init__(self,text,itemid,parent=None,*args): 
    QtGui.QListWidgetItem.__init__(self, text,parent, *args) 
    self.itemid=itemid 

И затем ... Я хочу получить доступ к этому элементу в DropEvent. Это возможно? Поскольку единственное, что я могу получить в dropEvent, это mimeData, но это не очень полезно. Я пытался сделать это, но без успеха ...

ответ

2

Вы можете использовать QDropEvent:source(), чтобы получить виджет, который был перетаскиван (IMHO ваш Task элемент, но я не знаю python).

+0

Unfortunatelly .source() предоставляет TaskListWidget (мой класс унаследован от QListWidget) ... так что виджет, из которого был перемещен элемент, или я делаю это неправильно? – middleofdreams

+0

Я не уверен, что вы поступаете правильно. Но, возможно, вы можете использовать .source(), чтобы получить свой TaskListWidget и использовать [currentItem] (http://qt-project.org/doc/qt-4.8/qlistwidget.html#currentItem), чтобы получить свой QListWidgetItem. – sgibb

+0

Ты абсолютно прав! Благодаря! – middleofdreams

Смежные вопросы