У меня есть три виджета TreeView внутри двух вложенных виджетов Paned:
- Paned (по горизонтали)
- Paned (по вертикали)
- TreeView
Другими словами, есть два TreeView слева и один справа, и все ониможет быть измененКроме того, все TreeViews находятся внутри ScrolledWindows с горизонтальной политикой полосы прокрутки, установленной на «never».
Оба TreeViews слева имеют только один столбец с текстом.Когда я перемещаю ползунок в панельных компонентах верхнего уровня, чтобы сделать два левых TreeViews меньшими, я ожидаю, что они будут обрезаны справа, если ширина слишком мала, чтобы уместить текст в столбцах.Вместо этого это выглядит так, как будто весь TreeView (оба) скользит влево, за пределы окна.Это очень нелогично, и, что еще более важно, скрыть расширители, которые являются первыми вещами, которые скрываются.
![resize behavior](https://i.stack.imgur.com/wXUl3.png)
Как вы можете видеть на картинкевыше, когда я перетаскиваю вертикальный ползунок влево, столбцы в обоих TreeViews слева скользят «за пределы» окна;левая граница изображения также является левой границей окна.
Это поведение, по-видимому, зависит от максимального размера значений внутри столбца, то есть он начинает это "скольжение" только после самого длинного значениябольше не вписывается в область просмотра, поэтому выглядит так, как будто TreeView или столбец внутри него имеют некоторый минимальный размер, который другие компоненты не могут сжать.Однако на всякий случай я установил все потенциально релевантные минимальные размеры равными 0 (хотя он также не работает с отсутствующим минимальным размером по умолчанию).
Вместо этого поведения я хочу TreeView и его столбецбыть изменен, скрывая часть значения справа, если это необходимо.Но, похоже, я не могу найти ничего в документации Gtk или в интерфейсе Glade, которая бы мне помогла.
Я использую Python и pygobject / Gtk3, а также использую Glade для интерактивного создания интерфейса.