10.8. Виджет Viewport

Скорее всего вам не понадобится использовать виджет Viewport напрямую. Вероятнее что вы будете использовать виджет ScrolledWindow (см Раздел 10.9, “Scrolled Windows”), который в свою очередь уже использует Viewport.

Контейнер Viewport позволяет вам поместить в него другой большой виджет так, что в одно время будет видна только какая-то часть этого большого виджета. Viewport использует регулятор (см Глава 7, Регуляторы), для определения области отображения.

Viewport создаётся с помощью функции:

  viewport = gtk.Viewport(hadjustment=None, vadjustment=None)

Как вы можете видеть, можно указывать горизонтальный и вертикальный регуляторы, которые будут использоваться виджетом. Если вы передадите аргументы со значениями None или не передадите их совсем, то произойдёт создание новых регуляторов автоматически.

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

  viewport.get_hadjustment()

viewport.get_vadjustment()

viewport.set_hadjustment(adjustment)

viewport.set_vadjustment(adjustment)

Последний метод используется для изменения внешнего вида Viewport:

  viewport.set_shadow_type(type)

Вот возможные значения для параметра type:

  SHADOW_NONE
SHADOW_IN
SHADOW_OUT
SHADOW_ETCHED_IN
SHADOW_ETCHED_OUT