Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: tguglanaklona от Апрель 05, 2011, 10:21



Название: Ширина колонки QTableView по тексту?
Отправлено: tguglanaklona от Апрель 05, 2011, 10:21
Хочу (вручную) поставить ширину колонки QTableView по тексту, который там лежит. Пишу

QFontMetrics metr = ui.tableView->fontMetrics();
int theWidestPxs = metr.width("Ссылка на самый длинный QString");
ui.tableView->setColumnWidth(col_Name,theWidestPxs);

Ширина колонки оказывается гораздо меньше.


Название: Re: Ширина колонки QTableView по тексту?
Отправлено: GreatSnake от Апрель 05, 2011, 10:56
забыл прибавить
Код
C++ (Qt)
style()->pixelMetric(QStyle::PM_HeaderMargin)

А чем не устроил
Код
C++ (Qt)
ui.tableView->horizontalHeader()->setResizeMode( col_Name, QHeaderView::ResizeToContents )
?


Название: Re: Ширина колонки QTableView по тексту?
Отправлено: RoulanD от Апрель 28, 2011, 06:12
Как у Excel так и у таблиц в Qt есть такая фишка. По двойному клику между Хедерами 2-х столбцов левый столбец уравнивается в ширине по самой большой строчке записанной в строках этого столбца. Вот этот двойной клик само собой вызывает какую то функцию, которая в посте ниже.


Название: Re: Ширина колонки QTableView по тексту?
Отправлено: RedDog от Апрель 28, 2011, 08:14
Код:
void QTableView::resizeColumnsToContents ()