获取QListView被选中的index

zhuoyang111 2014-12-02 09:53:15
在QListView中选中多个,然后我点击按钮删除这些行,如下,在addBtnClicked()中我定义QItemSelectionModel 和QModelIndexList 获取QListView被选中的index,但是运行的时候,函数结束会中断,主要是因为QModelIndexList indexlist = selmodel->selectedIndexes();这一行定义了导致的,请问这要怎么解决?(我的环境是Qt 5.2.0, VS2012平台,VS2010 V100工具集,如果用V110工具集的话是没问题的)

void generalSelectDialog::addBtnClicked()
{
QItemSelectionModel *selmodel = ui.list_show->selectionModel();
QModelIndexList indexlist = selmodel->selectedIndexes();
int count1 = indexlist.size();
}

错误如下

...全文
1129 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xjq2003 2014-12-04
  • 打赏
  • 举报
回复
引用 1 楼 ccrun 的回复:
selectionModel 方法返回的值,也有可能是空值,所以,保险的方法就是在这条语句的后面判断一下,如:
QItemSelectionModel *selmodel = ui.list_show->selectionModel();
if (selmodel)
{
    QModelIndexList indexlist = selmodel->selectedIndexes();
    int count1 = indexlist.size(); 
    ...
}
正解
ccrun.com 2014-12-02
  • 打赏
  • 举报
回复
selectionModel 方法返回的值,也有可能是空值,所以,保险的方法就是在这条语句的后面判断一下,如:
QItemSelectionModel *selmodel = ui.list_show->selectionModel();
if (selmodel)
{
    QModelIndexList indexlist = selmodel->selectedIndexes();
    int count1 = indexlist.size(); 
    ...
}

1,222

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧