我在每一行都有一個刪除按鈕。我正在嘗試使用QTableview的clicked()SIGNAL來獲取當前索引,然後做相應的操作,但在這種情況下不調用此插槽。由於某種原因它不起作用,我在連接clicked()SIGNAL時犯了一些錯誤嗎?QTableView:如何正確使用clicked()信號來獲取所選項目的索引?
void MyClass::myFunction()
{
ComboBoxItemDelegate* myDelegate;
myDelegate = new ComboBoxItemDelegate();
model = new STableModel(1, 8, this);
filterSelector->tableView->setModel(model);
filterSelector->tableView->setItemDelegate(myDelegate);
connect(filterSelector->tableView, SIGNAL(clicked(const QModelIndex&)), this, SLOT(slotHandleDeleteButton(const QModelIndex&)));
exec();
}
void MyClass::slotHandleDeleteButton(const QModelIndex& index)
{
if(index.column() == 8)
model->removeRow(index.row());
}
MyClass是否來自'SFilterEditor'? – Tomas
我編輯了代碼,請審查。 – wazza
我想它適用於除按鈕之外的所有列。對? – Tomas