GtkBox
GtkBox — Контейнер для размещения виджетов в одной строке или столбце
Функции
| GtkWidget * | gtk_box_new () |
| gboolean | gtk_box_get_homogeneous () |
| void | gtk_box_set_homogeneous () |
| int | gtk_box_get_spacing () |
| void | gtk_box_set_spacing () |
| GtkBaselinePosition | gtk_box_get_baseline_position () |
| void | gtk_box_set_baseline_position () |
| void | gtk_box_append () |
| void | gtk_box_prepend () |
| void | gtk_box_remove () |
| void | gtk_box_insert_child_after () |
| void | gtk_box_reorder_child_after () |
Свойства
| GtkBaselinePosition | baseline-position | Чтение / Запись |
| gboolean | homogeneous | Чтение / Запись |
| int | spacing | Чтение / Запись |
Типы и значения
| struct | GtkBox |
| struct | GtkBoxClass |
Иерархия объектов
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkBox
├── GtkShortcutsSection
╰── GtkShortcutsGroup
Реализованные интерфейсы
GtkBox реализует GtkAccessible, GtkBuildable, GtkConstraintTarget и GtkOrientable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
Виджет GtkBox располагает дочерние виджеты в одну строку или столбец, в зависимости от значения свойства “orientation”. В другой размерности все дочерние элементы получают одинаковый размер. Конечно, свойства “halign” и “valign” могут быть использованы для дочерних элементов, чтобы повлиять на их размещение.
Используйте последовательные вызовы gtk_box_append(), чтобы упаковать виджеты в GtkBox от начала до конца. Используйте gtk_box_remove(), чтобы удалить виджеты из GtkBox. gtk_box_insert_child_after() может быть использован для добавления дочернего элемента в определённой позиции.
Используйте gtk_box_set_homogeneous(), чтобы указать, должны ли все дочерние элементы GtkBox занимать одинаковое пространство.
Используйте gtk_box_set_spacing(), чтобы определить минимальное расстояние между всеми дочерними элементами в GtkBox. Обратите внимание, что отступы добавляются между дочерними элементами.
Используйте gtk_box_reorder_child_after() для перемещения дочернего элемента в другое место в ящике.
Узлы CSS
GtkBox использует один узел CSS с именем box.
Доступность
GtkBox использует роль GTK_ACCESSIBLE_ROLE_GROUP.
Функции
gtk_box_new ()
GtkWidget * gtk_box_new (GtkOrientation orientation,int spacing);
Создаёт новый GtkBox.
Параметры
orientation | ориентация ящика | |
spacing | количество пикселей, добавляемых по умолчанию между дочерними элементами |
Возвращает
новый GtkBox.
gtk_box_get_homogeneous ()
gboolean
gtk_box_get_homogeneous (GtkBox *box); Возвращает значение, указывающее, является ли ящик однородным (все дочерние элементы имеют одинаковый размер). См. gtk_box_set_homogeneous().
Параметры
box | a GtkBox |
Возвращает
TRUE если ящик однородный.
gtk_box_set_homogeneous ()
void gtk_box_set_homogeneous (GtkBox *box,gboolean homogeneous);
Устанавливает свойство “homogeneous” для box, управляющее тем, будут ли все дочерние элементы box иметь одинаковое выделенное пространство в ящике.
Параметры
box | a GtkBox | |
homogeneous | логическое значение, |
gtk_box_get_spacing ()
int
gtk_box_get_spacing (GtkBox *box); Получает значение, установленное функцией gtk_box_set_spacing().
Параметры
box | a GtkBox |
Возвращает
отступ между дочерними элементами
gtk_box_set_spacing ()
void gtk_box_set_spacing (GtkBox *box,int spacing);
Устанавливает свойство “spacing” для box, представляющее количество пикселей, отводимых между дочерними элементами box.
Параметры
box | a GtkBox | |
spacing | количество пикселей между дочерними элементами |
gtk_box_get_baseline_position ()
GtkBaselinePosition
gtk_box_get_baseline_position (GtkBox *box); Получает значение, установленное функцией gtk_box_set_baseline_position().
Параметры
box | a GtkBox |
Возвращает
позицию базовой линии
gtk_box_set_baseline_position ()
void gtk_box_set_baseline_position (GtkBox *box,GtkBaselinePosition position);
Устанавливает позицию базовой линии ящика. Это влияет только на горизонтальные ящики с по крайней мере одним дочерним элементом, выровненным по базовой линии. Если доступно больше вертикального пространства, чем необходимо, и базовая линия не распределяется родительским элементом, то position используется для распределения базовой линии относительно дополнительного доступного пространства.
Параметры
box | a GtkBox | |
position |
gtk_box_append ()
void gtk_box_append (GtkBox *box,GtkWidget *child);
Добавляет child в качестве последнего дочернего элемента к box.
Параметры
box | a GtkBox | |
child | GtkWidget для добавления |
gtk_box_prepend ()
void gtk_box_prepend (GtkBox *box,GtkWidget *child);
Добавляет child в качестве первого дочернего элемента к box.
Параметры
box | a GtkBox | |
child | GtkWidget для добавления в начало |
gtk_box_remove ()
void gtk_box_remove (GtkBox *box,GtkWidget *child);
Удаляет дочерний виджет из box после его добавления с помощью gtk_box_append(), gtk_box_prepend() или gtk_box_insert_child_after().
Параметры
box | a GtkBox | |
child | дочерний элемент для удаления |
gtk_box_insert_child_after ()
void gtk_box_insert_child_after (GtkBox *box,GtkWidget *child,GtkWidget *sibling);
Вставляет child в позицию после sibling в списке дочерних элементов box. Если sibling имеет значение NULL, вставляет child на первую позицию.
Параметры
box | a GtkBox | |
child | GtkWidget для вставки | |
sibling | элемент-близнец после которого вставлять | [nullable] |
gtk_box_reorder_child_after ()
void gtk_box_reorder_child_after (GtkBox *box,GtkWidget *child,GtkWidget *sibling);
Перемещает child в позицию после sibling в списке дочерних элементов box. Если sibling имеет значение NULL, перемещает child на первую позицию.
Параметры
box | a GtkBox | |
child | GtkWidget для перемещения, должен быть дочерним элементом | |
sibling | элемент-близнец после которого перемещать | [nullable] |
Типы и значения
Структура GtkBox
struct GtkBox;
Структура GtkBoxClass
struct GtkBoxClass {
GtkWidgetClass parent_class;
};
Члены
Подробное описание свойств
Свойство “baseline-position”
“baseline-position” GtkBaselinePosition
Позиция выравнивания базовых элементов, если доступно дополнительное место.
Владелец: GtkBox
Флаги: Чтение / Запись
Значение по умолчанию: GTK_BASELINE_POSITION_CENTER
Свойство “homogeneous”
“homogeneous” gboolean
Указывает, должны ли все дочерние элементы иметь одинаковый размер.
Владелец: GtkBox
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “spacing”
“spacing” int
Расстояние между дочерними элементами.
Владелец: GtkBox
Флаги: Чтение / Запись
Допустимые значения: >= 0
Значение по умолчанию: 0
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer-old.gnome.org/gtk4/4.0/GtkBox.html