Название: QTreeWidget управление секциями Отправлено: Igors от Сентября 11, 2015, 18:54 Добрый день
Аттач: первая и последняя колонка QHeaderView::Stretch, средняя - ResizeToContent. Вопросы: 1) Откуда горизонтальный скроллер? Причем неск пикселей, текст как был обрезан так и остался. Из каких соображений лепится скроллер и что надо сделать чтобы его не было? 2) Почему не забрали лишнее место у средней колонки? 3) Возможно мне и в средней колонке понадобится длинноватый текст. Тогда ResizeToContent совсем задавит первую и последнюю. А поставить всем трем Stretch - она просто сделает равные длины у всех :'( Текст примера прилагаю Спасибо Название: Re: QTreeWidget управление секциями Отправлено: Racheengel от Сентября 16, 2015, 11:57 По поводу 1 - похоже на кутишный баг, сам такое не раз видел. Лечится выключением горизонтального скроллера.
По поводу 2 - это "место" для значка сортировки в хедере, видать, стиль имплементирован так, что место остается, даже если сортировка неактивна. Ну а по поводу 3 - а если просто поставить ResizeToContent для всех колонок? Название: Re: QTreeWidget управление секциями Отправлено: poru от Сентября 16, 2015, 12:14 1) Последняя секция не может быть менее 100 пикселей - дурацкая формула расчета (Qt5.5.0). Qt::ScrollBarAlwaysOff - выключит скроллер навсегда.
2) Если лишнее место в заголовке то похоже действительно на резерв для значка. А если место в контексте, то текст заголовка рассматривается так же как контекст и на него так же действует правило ResizeToContents. 3) Как вариант установить минимальную ширину для колонок. Название: Re: QTreeWidget управление секциями Отправлено: Igors от Сентября 16, 2015, 12:35 Ну а по поводу 3 - а если просто поставить ResizeToContent для всех колонок? Тогда ничего не жмется, впарит горизонтальный скролл3) Как вариант установить минимальную ширину для колонок. А где это? "Для всех" есть, но что это дает?Название: Re: QTreeWidget управление секциями Отправлено: poru от Сентября 16, 2015, 13:16 Пересчитывай ширину всех колонок или какой-то отдельно самостоятельно - QHeaderView::Fixed, resizeSection().
|