Здравствуйте, гость ( Вход | Регистрация )
Алексей1153 | Дата 6.2.2019, 9:21 |
NicNici, ну, то есть, ты прокрутку как таковую не делаешь, ты управляешь скрытостью колонок в зависимости от положения плашки скрола но при таком варианте не получится попиксельную прокрутку сделать, будет только рывками. Если это устраивает, то нормуль ) но лично я бы поленился это всё вычислять |
|
NicNici | Дата 5.2.2019, 16:58 |
Спасибо Алексей1153 за варианты. Сам я реализовал следующим образом. Размещаю на виджете QTableWidget и QScrollBar. Из ширины QTableWidget->viewport()->size().width() вычитаю ширину столбцов которые закреплены (не перемещающиеся по скроллингу). Из оставшейся ширины вычисляю, сколько колонок помещается. Те, которые не помещаются, делаю их скрытыми (setColumnHidden). У скроллинга задаю setMaximum равную количеству скрытых столбцов. При перемещении ползунка скроллинга скрываю одни и отображаю другие столбцы. |
|
Алексей1153 | Дата 31.1.2019, 11:09 |
NicNici, вроде нет такой фичи, но есть следующие идеи: ------------------------------ вариант 1: берём два одинаковых по количеству колонок виджета (QTableWidget) T0 и T1, T1 размещается на T0 как чайлд (без использования компоновщика, чтобы не было спонтанных изменений размера). T1 делается по высоте равным T0 T1 делается по ширине таким, чтобы слева и справа остались виднЫ нужные (первая и последняя) колонки T0 левый край T0 совмещается с правым краем первой колонки. Также на T1 скрываются колонки первая и последняя модели обеих таблиц - одинакового класса - отображают данные из одного источника (но экземпляров модели - два, так как один экземпляр нельзя в два просмотра толкать) В итоге, визуально имеем T1 без первой и последней колонок, остальные колонки мотаются. Справа и слева видны торчащие колонки T0 (первая и последня). Ну и нужно синхронизировать вертикальную прокрутку плюсы: полная функциональность таблиц минусы: придётся плотно посидеть с напильником ------------------------------ вариант 2: скрыть первую и последнюю колонки добавить виджету широкий border слева и справа, где вручную отрисовать имитацию колонок плюсы: "малоинвазивность" минусы: отрисовка вручную, ну и функционал колонок нужно реализовывать вручную, если нужна интерактивность |
|
NicNici | Дата 30.1.2019, 14:37 |
Можно ли в QTableWidget закрепить первый и последний столбец, что бы при прокрутке они оставались на своих позициях, а столбцы между ними прокручивались? | |
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 24.4.2024, 0:11 |