Вопрос редактора C++ Qt

У меня есть случай, когда мне нужно вручную закрыть постоянный редактор для QTableWidget,

По умолчанию закрытие редактора не приводит к сохранению изменений в QTableWidgetItem (это просто отбрасывает их).

Я хочу сохранить эти изменения вместе с closePersistentEditor позвони - как это сделать?

Я пытался излучать cellChanged перед closePersistentEditor позвони - это не помогло

1 ответ

Решение

Похоже, вы можете написать что-то вроде этого

void MyTableWidget::commitAndClosePersistentEditor(const QTableWidgetItem* item)
{
    if (!item)
        return;

    QModelIndex index = indexFromItem(item);
    QWidget* editor = indexWidget(index);
    commitData(editor);
    closePresistentEditor(item);
}
Другие вопросы по тегам