поменять название столбца в QTreeView
Привет. Есть модель от QAbstractItemModel, надо на одной из вьюшек поменять название столбца. Делаю с помощью setHeaderData(...), но всегда возвращает false.
_testsModel->setHeaderData(Test::RESULTTIME, Qt::Horizontal, Interface::SHORTTIMENAME, Qt::DisplayRole); ui->_tests->setModel(_testsModel);
Пробовал делать через QSortFilterProxyModel, возвращает тоже false + падает приложение.
Как изменить название столбца? Переопределить в модели headerdata() не могу, тк модель используется во многих вьюхах, а изменить название столбца нужно только для одной.
update:
получилось сделать так, но почему вот так работает, а просто написать _testsModel->setHeaderData(...) нельзя, я не понимаю.
void MainTestsForm::changeRESULTTIMEColumnName() { QStandardItemModel *stmodel = new QStandardItemModel(0, Test::LAST_FIELD, this); for(int col(0); col < Test::LAST_FIELD; ++col) { stmodel->setHeaderData(col, Qt::Horizontal, _testsModel->headerData(col, Qt::Horizontal, Qt::DisplayRole)); if(col == Test::RESULTTIME) stmodel->setHeaderData(Test::RESULTTIME, Qt::Horizontal, Interface::SHORTDATENAME, Qt::DisplayRole); } ui->_tests->header()->setModel(stmodel); }
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!
Пікірлер
- Akiv Doros
- Қар. 11, 2024, 2:58 Т.Қ.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:50ұпай,
- Бағалау ұпайлары-4
- molni99
- Қаз. 26, 2024, 1:37 Т.Ж.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:80ұпай,
- Бағалау ұпайлары4
- molni99
- Қаз. 26, 2024, 1:29 Т.Ж.
C++ - Тест 004. Указатели, Массивы и Циклы
- Нәтиже:20ұпай,
- Бағалау ұпайлары-10
Добрый день
Если вы для каждой вьюшки создаёте свой экземпляр этой модели, то просто наследуйтесь от этой модели и переопределите только headerData() , и используйте эту переопределённую модель в этой конкретной вьюшке, или сделайте прокси модели для этой конкретной вьюшки. Архитектурно такой подход будет наиболее верным.