QTable - как изменить размер табличного представления? - PullRequest
0 голосов
/ 25 июля 2011

Я перетаскиваю табличное представление в моем приложении формы. Я хотел бы знать, как я могу программно изменить размер базы таблицы на основе количества строк, которые я добавляю. Цените, если можете показать mw некоторый код. ТНХ

1 Ответ

0 голосов
/ 25 июля 2011

Вы можете использовать метод setFixedHeight, сложная часть которого заключается в том, как рассчитать правильную высоту.

Есть пара вещей, которые сильно влияют на желаемую высоту - кроме количества строк.

a) Отображается или нет горизонтальный заголовок б) Являются ли строки одинаковыми по высоте.

Давайте предположим, что это видно, и что строки имеют одинаковую высоту. Таким образом, желаемая высота будет - высота заголовка + обычно строка * число или ряды, а также пара изображений для интервала границы.

MyTableView->horizontalHeader()->height() + _NumberOfRows * MyTableView->rowHeight(0) + 2

Теперь, если заголовок не виден - что мы можем проверить, вызвав HorizontalHeader () -> isVisible, тогда, очевидно, мы можем оставить его высоту.

Если наши строки имеют неодинаковую высоту, то мы не можем просто рассчитать ее, нам придется пройти через все эти циклы и получить каждую из их высот отдельно.

Затем, как я уже говорил, вызовите setFixedHeight, и все готово. За исключением любых странных стилей или подобных вещей, это должно охватывать все.

Удачи.

...