2013-11-26 1 views
1

У меня есть флажок для переключения состояния EDIT QTableView.QTableView toggle setEditTriggers

void QPcbView::editToggle(bool editable) 
{ 
    if(editable) 
     this->setEditTriggers(QTableView::AllEditTriggers); 
    else 
     this->setEditTriggers(QTableView::NoEditTriggers); 
} 

Это РАБОТАЕТ, но представление не обновляется. Значение, когда я переключаюсь с редактируемого на не редактируемый, ячейка, которая в настоящее время выбрана, остается редактируемой, пока она не потеряет фокус. Как я могу исправить это поведение? Я хочу, чтобы мой tableview отражал состояние EDIT мгновенно.

ответ

0

Вызов этого-> обновление() может работать. Или вы можете проверить значение флажка в методе данных модели.

+0

Пробовал это-> обновить() уже безрезультатно. – cee

+0

Вы пробовали updateEditorData(), updateEditorGeometries() или updateGeometries. Существует также метод сброса или setModel для той же модели, но они очень неэффективны. – HashSplat

+0

Я кровавый QtNoob, поэтому я не получу второй намек. Не могли бы вы объяснить или показать небольшой пример? Спасибо. – cee

 Смежные вопросы

  • Нет связанных вопросов^_^