Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » Кликабельные айтемы в Qt4 ListWidget [RSS Feed]

#1 Сен. 28, 2009 19:08:17

Enchantner
От:
Зарегистрирован: 2009-02-11
Сообщения: 442
Репутация: +  0  -
Профиль   Отправить e-mail  

Кликабельные айтемы в Qt4 ListWidget

Собственно, хотелось бы сообразить, как сделать сабж? Причем чтобы программа реагировала не на простой клик по айтему, а на двойной. Знаю, что вопрос нубский, но документацию честно копал - не нашел. Может быть, плохо копал.

Очевидное навскидку

self.centralwidget.connect(self.listWidget.item(i), QtCore.SIGNAL("clicked()"), self.test)
понятное дело, не работает. isSelected() не катит, ибо нужен двойной клик.



Отредактировано (Сен. 28, 2009 19:10:55)

Офлайн

#2 Сен. 28, 2009 22:07:34

pasaranax
От:
Зарегистрирован: 2009-06-13
Сообщения: 574
Репутация: +  0  -
Профиль   Отправить e-mail  

Кликабельные айтемы в Qt4 ListWidget

Ну если такого сигнала у виджета нет, то надо его сделать самому.

п.с. реализовать оказалось проще, чем я думал

import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *

class MyWidget(QWidget):
doubleClicked = pyqtSignal()
def mouseDoubleClickEvent(self, event):
self.doubleClicked.emit()

def iAmSlot():
print "hello"

if __name__ == "__main__":
app = QApplication(sys.argv)
window = MyWidget()
window.show()
window.doubleClicked.connect(iAmSlot)
sys.exit(app.exec_())



Отредактировано (Сен. 28, 2009 22:28:30)

Офлайн

#3 Сен. 28, 2009 22:52:21

Enchantner
От:
Зарегистрирован: 2009-02-11
Сообщения: 442
Репутация: +  0  -
Профиль   Отправить e-mail  

Кликабельные айтемы в Qt4 ListWidget

pasaranax
спасибо, попробую :)

Сразу еще один нубский вопрос - из какого модуля pyqtSignal() ? У меня в QtCore его нету. Версия PyQt4 вроде последняя.



Отредактировано (Сен. 28, 2009 23:19:10)

Офлайн

#4 Сен. 28, 2009 23:29:07

poltergeist
От:
Зарегистрирован: 2007-02-28
Сообщения: 522
Репутация: +  0  -
Профиль   Отправить e-mail  

Кликабельные айтемы в Qt4 ListWidget

1) по теме: http://doc.trolltech.com/4.5/qlistwidget.html#itemDoubleClicked

2) from foo import * - зло:(



Офлайн

#5 Сен. 28, 2009 23:52:23

pasaranax
От:
Зарегистрирован: 2009-06-13
Сообщения: 574
Репутация: +  0  -
Профиль   Отправить e-mail  

Кликабельные айтемы в Qt4 ListWidget

poltergeist
Сразу еще один нубский вопрос - из какого модуля pyqtSignal() ? У меня в QtCore его нету. Версия PyQt4 вроде последняя.
из QtCore, появилось в версии 4.5

poltergeist
2) from foo import * - злоsad
в случае префиксного стиля именования элементов библиотеки (QWidget) , вполне себе добро :)



Отредактировано (Сен. 28, 2009 23:53:35)

Офлайн

  • Начало
  • » GUI
  • » Кликабельные айтемы в Qt4 ListWidget[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version