如何在Qt中强制设置项目选择

Posted

技术标签:

【中文标题】如何在Qt中强制设置项目选择【英文标题】:how to set the item selection forcefully in Qt 【发布时间】:2010-03-19 06:33:04 【问题描述】:

谁能告诉我如何设置要强制选择的项目..

我在将项目添加到列表行后尝试了这个..

QModelIndex index = mylistview->currentIndex();
             mylistview ->setCurrentIndex(index);

它不工作.. index 我得到 index (-1,-1).. 谁能帮我解决这个问题

谢谢

【问题讨论】:

【参考方案1】:

您是否检查过您已授权的选择?在Qt Documentation中,说明除非选择模式为No Selection,否则该项目被选中。

【讨论】:

我得到的代码下面的解决方案运行良好.. 我还有一个问题,QModelIndex index = mylistmodel->index(row,0); mylistview->setCurrentIndex(index);即在我的应用程序中,我正在执行 appendrow() 将元素插入列表视图,当触发 rowsInserted 信号时,我得到的列号如 0、1、2、3 等。我只想要一列,即(第 0 列)只有... Appendrow() 不会将元素放到下一行或 wat? AppendRow 可以将一个或多个项目附加到您的模型。在 insertRows 插槽中,您将收到插入行的范围。如果您只追加一行,则 start 和 end 将具有相同的值 好的..我明白了..但是我怎样才能修改相同的..我应该使用 insertrows() 吗?我必须明确提及行名还是默认需要?你建议哪一个。谢谢 使用setItem函数:doc.trolltech.com/4.6/qstandarditemmodel.html#setItem

以上是关于如何在Qt中强制设置项目选择的主要内容,如果未能解决你的问题,请参考以下文章

qt如何导出成网页

如何强制调整 indexWidgets 的大小以适合 Qt5 QTableView 的单元格

我们如何在jenkins上强制为团队项目编写java注释?

如何使用 pytest-qt 鼠标单击在 QTableWidget 中选择一个项目?

Qt Creator中如何选择某个子项目为启动项目

如何使用VS2012调试QT程序