Russian Qt Forum
Ноябрь 25, 2024, 08:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Сменить заголовок у QTableWidget  (Прочитано 7443 раз)
kolob
Частый гость
***
Offline Offline

Сообщений: 296



Просмотр профиля
« : Май 08, 2013, 08:32 »

Всем привет!
Ни как не получается сменить заголовок. Нашел один метод, но он тоже не помогает. Создать временную таблицу, создать там заголовок и потом установить его в нужную мне таблицу.
Цитировать
GroupHeaderView *header = new GroupHeaderView(Qt::Horizontal);

QTableWidget *tempTable = new QTableWidget(0, 10);
tempTable ->setHorizontalHeaderLabels(headerList);
tempTable ->setHorizontalHeader(header)

GroupHeaderView *tempHeader = qobject_cast<GroupHEaderView*>(tempTable ->horizontalHeader);

QTableWidget *table = new QTableWidget(0, 10);
table->setHorizontalHeader(tempHeader)
Записан

Qt 5.11.0, Win, MinGW
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #1 : Май 08, 2013, 17:20 »

странно, у таблицы есть методы установки загловков вертикального и горизонтального - все работает... внимательнее читайте документацию.
Записан
kolob
Частый гость
***
Offline Offline

Сообщений: 296



Просмотр профиля
« Ответ #2 : Май 08, 2013, 17:53 »

странно, у таблицы есть методы установки загловков вертикального и горизонтального - все работает... внимательнее читайте документацию.
Вы что думаете я первый день с Qt знаком. Конечно я знаю эти методы. У меня там класс для иерархического заголовка был немного не очень хорошо написан (не мною). Т.е. после установки  заголовка, если менять лайблы заголовков, то обновления заголовка не происходило.

Я с обычными заголовка не пробовал.
« Последнее редактирование: Май 08, 2013, 18:02 от kolob » Записан

Qt 5.11.0, Win, MinGW
vintik
Гость
« Ответ #3 : Май 11, 2013, 21:58 »

Стоит глянуть исходники.
Есть предположение, что ты "отбираешь" ресурс, представляющий собой  заголовок, у tempTable и передаёшь его
во владения table. В результате, у tempTable - заголовок получается дефолтный, а у table - headerList.

Вообще, по тексту вопроса, не очень понимаю в чём, конкретно, проблема?
Почему для table нельзя вызвать?
Код:
void	setHorizontalHeaderLabels ( const QStringList & labels )
Записан
kolob
Частый гость
***
Offline Offline

Сообщений: 296



Просмотр профиля
« Ответ #4 : Май 12, 2013, 02:01 »

Да, наверно так и есть. Я думаю он автоматически обновится. Я использовал сторонний класс, наследник QHeaderView и там рисование (обновление) заголовка происходило во время его установки в таблицу или когда добавляется колонка. Я решил эту проблему.
Записан

Qt 5.11.0, Win, MinGW
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.064 секунд. Запросов: 23.