信号和插槽的连接(关于 qlistview) - Qt
Posted
技术标签:
【中文标题】信号和插槽的连接(关于 qlistview) - Qt【英文标题】:Connection of signals and slots (regarding qlistview) - Qt 【发布时间】:2017-06-07 07:29:51 【问题描述】:我需要连接一个信号和一个插槽,但我似乎无法弄清楚它的结构,我需要连接一个 qlistview 双击,我需要从元素所在的顶部开始的数字,例如,如果我有一个包含 5 个元素的 qlistview,并且您单击了第二个元素,我需要知道第二个元素已被单击。在使用中,我正在建立网络连接,并且 qlistview 显示了可用的网络。
总结一下,我想知道我必须使用的代码的 sn-p 来实现这一点,因为我无法弄清楚。
【问题讨论】:
我会先阅读QAbstractItemView::doubleClicked的文档(QListView
继承QAbstractItemView
,你也可以在文档中看到)
@Jonas 双击该项目时我设法执行了一个函数,但是,我似乎无法获得位置 ID。
@xander 我已经试过了,它工作得很好,当项目被双击时我设法执行了一个函数,但我似乎无法获得 qlistview 项目的 id。
请发minimal reproducible example
你的“id”是什么意思?发布一些您已经拥有和期望的代码。列表视图通常不包含任何数据,这取决于您的列表模型的实现以检索我猜的单击项目的一些数据。
【参考方案1】:
要获取点击项的行索引,您只需访问QListView
的doubleClicked
插槽中的QModelIndex
,例如
int row = index.row();
也许您应该阅读introduction to Qt's model view classes 以大致了解一切是如何连接的。
【讨论】:
以上是关于信号和插槽的连接(关于 qlistview) - Qt的主要内容,如果未能解决你的问题,请参考以下文章