crossplatform.ru

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


  Ответ в Как узнать необходимую ширину колонки
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
flankerr Дата 8.4.2011, 13:46
 
Цитата(wiz29 @ 5.4.2011, 17:33) *
прежде чем грубить, покажи пост в котором прозвучал вопрос про отступы...

ГРубить ??? :o: А вопроса про отступы нет. Вопрос чётко и подробно задан в начале темы. Твой ответ увы лишь озвучил то что я не стал расписывать.

Вообще имперически отсупы от тектса равны одному пробелу слева и спарва - но это может быть просто совпадение.
wiz29 Дата 5.4.2011, 16:33
  прежде чем грубить, покажи пост в котором прозвучал вопрос про отступы...
flankerr Дата 5.4.2011, 16:15
 
Цитата(wiz29 @ 5.4.2011, 11:51) *
В твоем случае скорее всего не учитывается отступы в самих элементах таблицы, в результате если не помещается 1 симол их заменяют тремя точками отсюда и результат.
Спасибо кэп за озвучку очевидных фактов :lol:

Вопрос как раз стоит как узнать эти самые "отступы".
wiz29 Дата 5.4.2011, 10:51
 
Цитата(flankerr @ 31.3.2011, 15:44) *
Просчёт ширины при помощи фонтметрикса
  iW = m_View.fontMetrics().boundingRect("1234567890").width()
выдаёт близкий но ошибочный результат. К примеру вместо строки "1234567890" будет установлена меньшая ширина и будет выведено "1234567..."

В твоем случае скорее всего не учитывается отступы в самих элементах таблицы, в результате если не помещается 1 симол их заменяют тремя точками отсюда и результат.
madnessw Дата 5.4.2011, 3:38
  у меня тоже не срабатывала этот метод проблема решилась когда я задал setSortingEnabled(false);
незнаю в чём глюк но у меня так только заработало (использовал QAbstractItemmodel+QSortFilterProxyModel+QTableView)
Я сначало отключил сортировку потом включил и всё заработало
RazrFalcon Дата 31.3.2011, 16:32
  Тоже похожая проблема. Не срабатывает resizeColumnsToContents. <_<
flankerr Дата 31.3.2011, 15:44
  Есть строка текста . Её надо вывести в 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..."

Важно! Все просчёты надо выполнить в теле одной функции. Т.е. операции требующие прохода через очередь сообщений надо избежать.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 15:22