Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: kolob от Май 08, 2013, 08:32



Название: Сменить заголовок у QTableWidget
Отправлено: kolob от Май 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)


Название: Re: Сменить заголовок у QTableWidget
Отправлено: Fregloin от Май 08, 2013, 17:20
странно, у таблицы есть методы установки загловков вертикального и горизонтального - все работает... внимательнее читайте документацию.


Название: Re: Сменить заголовок у QTableWidget
Отправлено: kolob от Май 08, 2013, 17:53
странно, у таблицы есть методы установки загловков вертикального и горизонтального - все работает... внимательнее читайте документацию.
Вы что думаете я первый день с Qt знаком. Конечно я знаю эти методы. У меня там класс для иерархического заголовка был немного не очень хорошо написан (не мною). Т.е. после установки  заголовка, если менять лайблы заголовков, то обновления заголовка не происходило.

Я с обычными заголовка не пробовал.


Название: Re: Сменить заголовок у QTableWidget
Отправлено: vintik от Май 11, 2013, 21:58
Стоит глянуть исходники.
Есть предположение, что ты "отбираешь" ресурс, представляющий собой  заголовок, у tempTable и передаёшь его
во владения table. В результате, у tempTable - заголовок получается дефолтный, а у table - headerList.

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


Название: Re: Сменить заголовок у QTableWidget
Отправлено: kolob от Май 12, 2013, 02:01
Да, наверно так и есть. Я думаю он автоматически обновится. Я использовал сторонний класс, наследник QHeaderView и там рисование (обновление) заголовка происходило во время его установки в таблицу или когда добавляется колонка. Я решил эту проблему.