从我正在阅读的书中:



因此,我在代码中调用了该函数:

ui->listWidget->setEditTriggers(QAbstractItemView::AnyKeyPressed);

但是当我选择一个项目并开始输入时,什么也没发生。

最佳答案

事实证明,项目本身也具有可编辑的标志,因此添加它们后,我必须迭代所有项目并进行设置。现在可以了。

// set the editable flag for each item
for (int ii = 0; ii < ui->listWidget->count(); ii++) {
    ui->listWidget->item(ii)->setFlags(ui->listWidget->item(ii)->flags() | Qt::ItemIsEditable);
}
// set the editable triggers for the list widget
ui->listWidget->setEditTriggers(QAbstractItemView::AnyKeyPressed);

10-08 19:18