How to trigger the edit mode of an item in a QTableView?

Claire Huang picture Claire Huang · Sep 10, 2010 · Viewed 9.3k times · Source

I'm using QTableView and QStandardItemModel now.

In the QTableView, if you double-click a cell, this cell will get into edit mode and you can edit its content.

Now I have a problem, I want to trigger the edit mode of an item by code (by command), what should I do? I cannot find proper function or slot in QTableView or QStandardItemModel. Do I need to emit any signal to get into edit mode?

And which signal I should catch if I want to know when the editing is finish (user press "Enter" or click another items to leave the edit mode)??

Thanks for your help

Answer

serge_gubenko picture serge_gubenko · Sep 10, 2010

you should be able to use edit method of the QAbstractItemView class to trigger editing for the given model index.

Pls, see if an example below would work for you:

QModelIndex index = ui->tableView->model()->index(0, 0, QModelIndex());
ui->tableView->edit(index);

hope this helps, regards