2010-12-14 2 views
4

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

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

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

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

ответ

3

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

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

    QModelIndex index = indexFromItem(item); 
    QWidget* editor = indexWidget(index); 
    commitData(editor); 
    closePresistentEditor(item); 
} 
Смежные вопросы