Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyQt:激活QListWidget项_Python_Qt_Pyqt_Signals_Qlistwidget - Fatal编程技术网

Python PyQt:激活QListWidget项

Python PyQt:激活QListWidget项,python,qt,pyqt,signals,qlistwidget,Python,Qt,Pyqt,Signals,Qlistwidget,我想使用parentWidget中的事件过滤器激活listWidget中的一个项目,它是ChildWidget的一部分。以下是相关parentWidget代码的一部分: self.w = ChildWidget() def eventFilter(self, source, event): if event.type() in (QtCore.QEvent.MouseButtonPress, QtCore.QEvent.

我想使用parentWidget中的事件过滤器激活listWidget中的一个项目,它是ChildWidget的一部分。以下是相关parentWidget代码的一部分:

    self.w = ChildWidget()
    def eventFilter(self, source, event):
      if event.type() in (QtCore.QEvent.MouseButtonPress,
                        QtCore.QEvent.MouseButtonDblClick):
        if event.button() == QtCore.Qt.LeftButton:
                self.w.listWidget.itemActivated
在ChildWidget中:

    self.listWidget.itemActivated.connect(self.klik)
    if item.data(Qt.UserRole).toPyObject():
        mp3=item.data(Qt.UserRole).toPyObject()
        playsnd("/home/pi/Desktop/komunikator/Recenice/pekara/"+mp3)
事件过滤器工作正常,只是命令

self.w.listWidget.itemActivated

它不起作用了。是否有其他方式激活项目并触发要发送的项目激活信号?

好的,请您解释一下我应该做什么?我尝试了self.w.listWidget.itemActivated.emit(无)。它发送信号,但函数klik不接收参数“item”。我还能去哪里?我成功了!行是:self.w.listWidget.itemActivated.emit(self.w.listWidget.currentItem())
In [9]: q.itemActivated
Out[9]: <bound signal itemActivated of QListWidget object at 0x1d13560>
In [10]: q.itemActivated()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-10-3602f33f377a> in <module>()
----> 1 q.itemActivated()

TypeError: native Qt signal is not callable
q.itemActivated.emit(None)