2015-12-11 29 views
0

抱歉,必須這樣做,但這個問題已經存在,我可以在那裏問,但是不是,首先需要50的聲望。這給我1如何將QPushButton插入到TableView並使其查看/顯示?

從其中一個答案:

QPushButton* viewButton = new QPushButton("View"); 
tableView->setIndexWidget(model->index(counter,2), viewButton); 

我已經試過了,但按鈕不會在所有的顯示,代碼工作,但沒有顯示在單元格中。已經看過紡紗器樣品,並試圖一個按鈕代表 - 沒有成功

我使用的是QStandardItemModel來保存數據,模型添加到QSortFilterProxyModel(用於過濾目的)被設置爲。顯示數據沒有問題,但不是按鈕。

回答

1

setIndexWidget(QModelIndex const & index,QWidget *)中的index參數應該屬於同一個模型,它在視圖中設置。你的變量「模型」是指什麼?對於數據持有者模型(這不是模型集視圖的模型!!!)還是代理模型? 一個安全的辦法是撥打:

tableView->setIndexWidget(tableView->model()->index(counter,2), viewButton); 
+0

我使用QStandardItemModel * m_model(=在上面的代碼模型),這是我的Q_PROPERTY ...使用成員變量。這個m_model被設置爲proxyfiltermodel,用於過濾。 proxyFilterModel被設置爲tableview-> setModel。 –

+0

我是否閱讀您的答案,因爲我應該使用我的filterproxymodel中的索引而不是我的standarditemmodel索引? –

+0

試過並得到了分段錯誤 –

相關問題