Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » получение id элемента ListWidget по двойному клику [RSS Feed]

#1 Дек. 17, 2010 15:04:23

AKAdem1c
От:
Зарегистрирован: 2010-12-05
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

получение id элемента ListWidget по двойному клику

list это ListWidget

есть ListWidget в него я добавил элементы вот так:
list = self.listWidget_friends
for i in x.object:
list.addItem(QListWidgetItem(i.getname()))

затем я подключил виджет вот так: self.connect(self.listWidget_friends, QtCore.SIGNAL(“itemDoubleClicked(QListWidgetItem*)”), self.tesing)

self.tesing это то что выполняется по двойному клику (там просто печатает “ок”)

А вопрос такой как мне получить индекс выбранного элемента?
если можно пример небольшой чтобы у меня в self.tesing напечаталось ID элемента класс референс я видел, немного рапутался помогите разрулить



Офлайн

#2 Дек. 17, 2010 16:43:06

AKAdem1c
От:
Зарегистрирован: 2010-12-05
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

получение id элемента ListWidget по двойному клику

for Item in self.listWidget_friends.selectedItems():
print unicode(Item.text())

удалось сделать вот так но возвращает текст а надо бы индекс



Офлайн

#3 Дек. 18, 2010 12:07:38

svas
От:
Зарегистрирован: 2010-01-27
Сообщения: 239
Репутация: +  9  -
Профиль   Отправить e-mail  

получение id элемента ListWidget по двойному клику

У QAbstractItemView, от которого наследуется QListWidget, есть сигнал doubleClicked(const QModelIndex &index). Попробуйте, может заработает



Офлайн

#4 Дек. 18, 2010 14:15:21

AKAdem1c
От:
Зарегистрирован: 2010-12-05
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

получение id элемента ListWidget по двойному клику

svas
а что скажешь QAbstractListModel? там больше фунционала?



Офлайн

#5 Дек. 19, 2010 11:18:30

udav
От:
Зарегистрирован: 2010-05-30
Сообщения: 43
Репутация: +  0  -
Профиль   Отправить e-mail  

получение id элемента ListWidget по двойному клику

QListWidget.selectedIndexes(self)
возвращает несортированный список индексов выбранных элементов
QListWidget можно получить так:
QListWidget=QListWidgetItem.listWidget



Офлайн

#6 Дек. 19, 2010 22:51:21

AKAdem1c
От:
Зарегистрирован: 2010-12-05
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

получение id элемента ListWidget по двойному клику

udav
превосходный ответ!

реализация такая

for item in self.list.selectedIndexes():
print item.row()

напечатает индексы



Офлайн

#7 Окт. 22, 2016 01:16:05

OzXaker
От:
Зарегистрирован: 2010-12-01
Сообщения: 49
Репутация: +  0  -
Профиль   Адрес электронной почты  

получение id элемента ListWidget по двойному клику

да спасибо большое этот вариант я только что нашол

 for item in self.addLIST.selectedIndexes():
            print (item.row())



Офлайн

#8 Окт. 22, 2016 01:23:21

OzXaker
От:
Зарегистрирован: 2010-12-01
Сообщения: 49
Репутация: +  0  -
Профиль   Адрес электронной почты  

получение id элемента ListWidget по двойному клику

Помогите с этим вопросом
——————————–
как добавить контекстное меню в QListWidget(), как сделать так что бы после выбора элемента из списка скажем выбрал из списка -> “Один” кликнтул по нему правой кнопкой мыши , то появилось бы меню “Удалить” кликаю по нему и выбранная строчка удаляется.



Офлайн

  • Начало
  • » GUI
  • » получение id элемента ListWidget по двойному клику[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version