Команда pack используется
для управления соответствующим геометрическим менеджером, размещающим виджеты
по различным сторонам родительского окна, и для получения от него справочной
информации. Команда может иметь перечисленные ниже формы в зависимости
от значения аргумента option. pack slave ?slave ...? ?options?
Если первый аргумент команды является
именем окна (любая величина, начинающаяся с ‘.’), команда выполняется точно
также, как команда pack configure.
pack configure slave ?slave
...? ?options?
Аргумент команды состоит из имени
одного или нескольких размещаемых виджетов, после которых идут пары аргументов,
состоящих из имени опции и ее значения. Подробное описание действий, выполняемых
при размещении виджетов приведено ниже (см. "Алгоритм
упаковки pack"). Ниже перечислены возможные опции команды.
-after other
Other должно быть именем другого
окна. Мастер-окна
other используется как мастер для slave. Список
slave ?slave ...? вставляется в список размещаемых окон сразу после
other.
-anchor anchor
Anchor должен быть одной из
возможных позиций якоря, например, n или sw. Он определяет
как размещается slave в отведенном ему пространстве. Значение по умолчанию
— center (с).
-before other
Other должно быть именем другого
окна. Мастер-окно окна other используется как мастер-окно для slave.
Список
slave ?slave ...? вставляется в список размещаемых окон непосредственно
перед
other.
-expand boolean
Определяет, будут ли перечисленные
виджеты расширяться при наличии свободного пространства в мастер-окне.
Boolean
должно иметь булево значение, например, 1 или no. Значение
по умолчанию `0’.
-fill style
Если в мастер-окне для slave
имеется свободное пространство, управляет растяжением виджета slave.
Аргумент style может иметь одно
из следующих значений: none
Предоставляет виджету slave
требуемый размер (включая поля, запрошенные с помощью опций -ipadx
или -ipady). Это значение по умолчанию.
x
Расширяет виджет slave в горизонтальном
направлении так, чтобы он заполнил все свободное пространство (за исключением
внешних полей, заданных с помощью опции -padx).
y
Расширяет виджет slave в вертикальном
направлении так, чтобы он заполнил все свободное пространство (за исключением
внешних полей, заданных с помощью опции -pady).
both
Расширяет виджет slave в обоих
направлениях.
-in other
Включает slave(s) в конец списка
размещаемых окон для окна other.
-ipadx amount
Аргумент amount указывает размер
горизонтальных внутренних полей, которые должны быть с обеих сторон виджета
slave. Размер должен быть указан в одной из форм, в которой можно задавать
размеры на экране, например, 2 (2 пикселя) или .5c (0.5 сантиметра).
Значение по умолчанию 0.
-ipady amount
Аргумент amount указывает
размер вертикальных внутренних полей, которые должны быть с обеих сторон
виджета slave. Размер должен быть указан в одной из форм, в которой можно
задавать размеры на экране, например, 2 (2 пикселя) или .5c
(0.5 сантиметра). Значение по умолчанию 0.
-padx amount
Аргумент amount указывает
размер горизонтальных внешних полей, которые должны быть с обеих сторон
виджета slave. Размер должен быть указан в одной из форм, в которой можно
задавать размеры на экране, например, 2 (2 пикселя) или .5c
(0.5 сантиметра). Значение по умолчанию 0.
-pady amount
Аргумент amount указывает
размер вертикальных внешних полей, которые должны быть с обеих сторон виджета
slave. Размер должен быть указан в одной из форм, в которой можно задавать
размеры на экране, например, 2 (2 пикселя) или .5c (0.5 сантиметра).
Значение по умолчанию 0.
-side side
Определяет, к какой стороне мастер-окна
будут помещены виджеты slave. Возможные значения аргумента side: left,
right,
top
или bottom. Значение по умолчанию
top.
Если никакая из опций -in, -after
или -before не указана, каждый из slave будет внесен в конец
списка размещения своего непосредственного родителя (если только он не
был внесен туда ранее, в этом случае он останется на своем прежнем месте).
Если же одна из перечисленных опций указана, все slave будут внесены
в соответствующий список в указанное место. Если какие-либо из slave окон
ранее уже обрабатывались геометрическим менеджером, то для не определенных
в команде опций будут использоваться старые значения, а не значения по
умолчанию.
pack forget slave ?slave
...?
Перечисленные окна удаляются из списка
упаковки и с экрана. Эти окна больше не управляются геометрическим менеджером.
pack info slave
Возвращает список опций и их значений
для окна
slave в той же форме, в какой они задаются в команде pack
configure. Первые два элемента списка — ``-in master'',
где master' — имя окна, в котором размещается slave.
pack propagate master ?boolean?
Аргумент boolean, если он
задан, определяет, будет ли окно master расширяться при необходимости
(подробности приведены ниже, см. "Расширение
виджетов"). Команда при этом возвращает пустую строку. Если аргумент
не задан, команда возвращает текущее значение опции (0 или 1).
По умолчанию расширение разрешено.
pack slaves master
Возвращает список всех размещаемых
окон для master. Если в окне master нет размещаемых окон,
возвращается пустой список.