crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Как узнать необходимую ширину колонки, установить необходимую ширину
flankerr
  опции профиля:
сообщение 31.3.2011, 15:44
Сообщение #1


Активный участник
***

Группа: Участник
Сообщений: 356
Регистрация: 9.1.2008
Пользователь №: 65

Спасибо сказали: 2 раз(а)




Репутация:   0  


Есть строка текста . Её надо вывести в QTableView

QStandardItem* item = new QStandardItem();
item->setText("1234567890");
m_Model.setItem(0,0,item);
Надо установить ширину колонки ( см код ниже переменная iW ) необходимую для вывода строки целиком. При этом ширина должна быть минимальной.
m_View.setColumnWidth ( 0, iW);
Вызов
 m_View.resizeColumnsToContents()
не даёт результатов.
Просчёт ширины при помощи фонтметрикса
  iW = m_View.fontMetrics().boundingRect("1234567890").width()
выдаёт близкий но ошибочный результат. К примеру вместо строки "1234567890" будет установлена меньшая ширина и будет выведено "1234567..."

Важно! Все просчёты надо выполнить в теле одной функции. Т.е. операции требующие прохода через очередь сообщений надо избежать.

Сообщение отредактировал flankerr - 31.3.2011, 15:53
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
madnessw
  опции профиля:
сообщение 5.4.2011, 3:38
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 21
Регистрация: 12.3.2010
Пользователь №: 1527

Спасибо сказали: 0 раз(а)




Репутация:   0  


у меня тоже не срабатывала этот метод проблема решилась когда я задал setSortingEnabled(false);
незнаю в чём глюк но у меня так только заработало (использовал QAbstractItemmodel+QSortFilterProxyModel+QTableView)
Я сначало отключил сортировку потом включил и всё заработало
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.11.2024, 5:33