向 QListWidget 添加或删除项目时发出信号

New*_*Guy 3 python signals pyqt qlistwidget

我根据应用程序中其他地方的用户选择动态地向 QListWidget 添加和删除项目。在 QListWidget 中添加或删除项目时是否会发出信号?我在文档中看到的信号没有提到添加或删除的任何内容。其余信号用于与单个项目交互时。

当一个项目添加到我的 QListWidget 时,我如何得到通知?

一个非常简单的例子:

from PyQt4.QtGui import *
import sys

app = QApplication(sys.argv)
listWidget = QListWidget()

for i in range(10):
    item = QListWidgetItem("Item %i" % i)
    listWidget.addItem(item)
    # ^^^ This is what I want a signal on

listWidget.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)

我可以利用什么信号来捕获该addItem事件?

mdu*_*ant 8

您需要在小部件中获取隐含的模型对象:

model = listWidget.model()
Run Code Online (Sandbox Code Playgroud)

这有一个rowsInserted您可以连接的信号。见http://doc.qt.io/qt-4.8/qabstractlistmodel-members.html