在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();
}
錯誤如下

uj5u.com熱心網友回復:
selectionModel 方法回傳的值,也有可能是空值,所以,保險的方法就是在這條陳述句的后面判斷一下,如:QItemSelectionModel *selmodel = ui.list_show->selectionModel();
if (selmodel)
{
QModelIndexList indexlist = selmodel->selectedIndexes();
int count1 = indexlist.size();
...
}
uj5u.com熱心網友回復:
正解轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/110085.html
上一篇:向大神們請教幾個問題
