QT / C ++:当QListWidgetItem检查信号?
-
27-09-2019 - |
题
在我的形式I具有其中包含可检查QListWidget
一个QListWidgetItems
。我正在寻找一种方式来捕捉QListWidgetItem
之中选中/取消的事件。我不认为现有的这方面的任何这样的信号,但也许我错了。使用QListWidget::itemClicked()
信号和检查checkState
的QListWidgetItem
什么我目前做的是,但这不是我想要的,因为这种事件发生的项目被点击任何时候,不要只是去对号翻转。任何人都可以提供一些帮助?谢谢!
解决方案
显然没有提供这样的信号,最好的办法是使用 QListWidget::itemChanged(QListWidgetItem* item)
一>,并扫描所得到的 item->checkState()
。这应该是在使用itemClicked
略有改善
其他提示
这是额外的选择是使用自己的QAbstractListModel
用QListView
。起初,这不,因为你需要添加自己的管理代码添加一些额外的代码。但是,你得到一个更低级别的访问。基本上,因为QListView
会问你的模型做什么。它也将继电器输入回到你的ListModel在那里你可以连接它。
或者,也可以继承QStandardItemModel
和捕捉与改变的复选框某些修改。
不隶属于 StackOverflow