GtkTable
GtkTable — Упаковка виджетов в регулярных шаблонах
Функции
| GtkWidget * | gtk_table_new () |
| void | gtk_table_resize () |
| void | gtk_table_get_size () |
| void | gtk_table_attach () |
| void | gtk_table_attach_defaults () |
| void | gtk_table_set_row_spacing () |
| void | gtk_table_set_col_spacing () |
| void | gtk_table_set_row_spacings () |
| void | gtk_table_set_col_spacings () |
| void | gtk_table_set_homogeneous () |
| guint | gtk_table_get_default_row_spacing () |
| gboolean | gtk_table_get_homogeneous () |
| guint | gtk_table_get_row_spacing () |
| guint | gtk_table_get_col_spacing () |
| guint | gtk_table_get_default_col_spacing () |
Свойства
| guint | column-spacing | Чтение / Запись |
| gboolean | homogeneous | Чтение / Запись |
| guint | n-columns | Чтение / Запись |
| guint | n-rows | Чтение / Запись |
| guint | row-spacing | Чтение / Запись |
Свойства дочерних элементов
| guint | bottom-attach | Чтение / Запись |
| guint | left-attach | Чтение / Запись |
| guint | right-attach | Чтение / Запись |
| guint | top-attach | Чтение / Запись |
| GtkAttachOptions | x-options | Чтение / Запись |
| guint | x-padding | Чтение / Запись |
| GtkAttachOptions | y-options | Чтение / Запись |
| guint | y-padding | Чтение / Запись |
Типы и значения
| struct | GtkTable |
| enum | GtkAttachOptions |
Иерархия объектов
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkContainer
╰── GtkTable
Реализованные интерфейсы
GtkTable реализует AtkImplementorIface и GtkBuildable.
Файлы
#include <gtk/gtk.h>
Описание
Функции GtkTable позволяют программисту организовывать виджеты в строки и столбцы, что облегчает выравнивание многих виджетов рядом друг с другом по горизонтали и вертикали.
Таблицы создаются с помощью вызова gtk_table_new(), размер которого позже может быть изменён с помощью gtk_table_resize().
Виджеты могут быть добавлены в таблицу с помощью gtk_table_attach() или более удобного (но немного менее гибкого) gtk_table_attach_defaults().
Для изменения пространства рядом с конкретной строкой используйте gtk_table_set_row_spacing(), а для столбца — gtk_table_set_col_spacing(). Разрывы между всеми строками или столбцами могут быть изменены вызовом gtk_table_set_row_spacings() или gtk_table_set_col_spacings() соответственно. Обратите внимание, что отступы добавляются между дочерними элементами, а отступы, добавленные с помощью gtk_table_attach(), добавляются по обе стороны от виджета, к которому они относятся.
gtk_table_set_homogeneous() может быть использован для установки того, будут ли все ячейки в таблице изменять свой размер до размера самого большого виджета в таблице.
Функции
gtk_table_new ()
GtkWidget * gtk_table_new (guint rows,guint columns,gboolean homogeneous);
gtk_table_new устарела начиная с версии 3.4 и не должна использоваться в новом коде.
Используйте gtk_grid_new().
Используется для создания нового виджета таблицы. Изначальный размер должен быть задан указанием количества строк и столбцов, хотя это можно изменить позже с помощью gtk_table_resize(). rows и columns должны быть в диапазоне от 1 до 65535. По историческим причинам, 0 также принимается и молча интерпретируется как 1.
Параметры
rows | Количество строк в новой таблице. | |
columns | Количество столбцов в новой таблице. | |
homogeneous | Если установлено в значение |
Возвращаемое значение
Указатель на созданный виджет таблицы.
gtk_table_resize ()
void gtk_table_resize (GtkTable *table,guint rows,guint columns);
gtk_table_resize устарела начиная с версии 3.4 и не должна использоваться в новом коде.
GtkGrid автоматически изменяет размер.
Если вам нужно изменить размер таблицы после ее создания, эта функция позволяет это сделать.
Параметры
table | Таблица GtkTable, размер которой необходимо изменить. | |
rows | Новое количество строк. | |
columns | Новое количество столбцов. |
gtk_table_get_size ()
void gtk_table_get_size (GtkTable *table,guint *rows,guint *columns);
gtk_table_get_size устарела начиная с версии 3.4 и не должна использоваться в новом коде.
GtkGrid не предоставляет количество столбцов и строк.
Получает количество строк и столбцов в таблице.
Параметры
table | таблица GtkTable | |
rows | место назначения для количества строк, или | [out][allow-none] |
columns | место назначения для количества столбцов, или | [out][allow-none] |
С: 2.22
gtk_table_attach ()
void gtk_table_attach (GtkTable *table,GtkWidget *child,guint left_attach,guint right_attach,guint top_attach,guint bottom_attach,GtkAttachOptions xoptions,GtkAttachOptions yoptions,guint xpadding,guint ypadding);
gtk_table_attach устарела начиная с версии 3.4 и не должна использоваться в новом коде.
Используйте gtk_grid_attach() с GtkGrid. Обратите внимание, что аргументы привязки отличаются в этих двух функциях.
Добавляет виджет в таблицу. Количество «ячеек», которые будет занимать виджет, определяется параметрами left_attach , right_attach , top_attach и bottom_attach . Они представляют собой номера левого, правого, верхнего и нижнего столбца и строки таблицы. (Столбцы и строки индексируются с нуля).
Для того, чтобы кнопка занимала нижнюю правую ячейку таблицы 2x2, используйте:
gtk_table_attach (table, button,
1, 2, // left, right attach
1, 2, // top, bottom attach
xoptions, yoptions,
xpadding, ypadding); Если вы хотите, чтобы кнопка занимала всю нижнюю строку, используйте left_attach == 0 и right_attach = 2 вместо этого.
Параметры
gtk_table_attach_defaults ()
void gtk_table_attach_defaults (GtkTable *table,GtkWidget *widget,guint left_attach,guint right_attach,guint top_attach,guint bottom_attach);
gtk_table_attach_defaults устарела начиная с версии 3.4 и не должна использоваться в новом коде.
Используйте gtk_grid_attach() с GtkGrid. Обратите внимание, что аргументы привязки отличаются в этих двух функциях.
Поскольку существует множество опций, связанных с gtk_table_attach(), эта функция-утилита предоставляет программисту возможность добавлять дочерние элементы в таблицу с одинаковыми параметрами отступа и расширения. Значения, используемые для GtkAttachOptions, составляют GTK_EXPAND | GTK_FILL, а отступ установлен в 0.
Параметры
gtk_table_set_row_spacing ()
void gtk_table_set_row_spacing (GtkTable *table,guint row,guint spacing);
gtk_table_set_row_spacing устарел начиная с версии 3.4 и не должен использоваться в новом коде.
Используйте gtk_widget_set_margin_top() и gtk_widget_set_margin_bottom() для виджетов, содержащихся в строке, если вам нужна эта функциональность. GtkGrid не поддерживает интервалы между строками.
Изменяет расстояние между заданной строкой таблицы и следующей строкой.
Параметры
table | a GtkTable содержащий строку, свойства которой вы хотите изменить. | |
row | номер строки, интервал которой будет изменен. | |
spacing | количество пикселей, которые должен занимать интервал. |
gtk_table_set_col_spacing ()
void gtk_table_set_col_spacing (GtkTable *table,guint column,guint spacing);
gtk_table_set_col_spacing устарел начиная с версии 3.4 и не должен использоваться в новом коде.
Используйте gtk_widget_set_margin_start() и gtk_widget_set_margin_end() для виджетов, содержащихся в строке, если вам нужна эта функциональность. GtkGrid не поддерживает интервалы между строками.
Изменяет количество пространства между заданным столбцом таблицы и следующим столбцом.
Параметры
table | a GtkTable. | |
column | столбец, интервал которого должен быть изменен. | |
spacing | количество пикселей, которые должен занимать интервал. |
gtk_table_set_row_spacings ()
void gtk_table_set_row_spacings (GtkTable *table,guint spacing);
gtk_table_set_row_spacings устарел начиная с версии 3.4 и не должен использоваться в новом коде.
Используйте gtk_grid_set_row_spacing() с GtkGrid.
Устанавливает расстояние между каждой строкой в table равным spacing .
Параметры
table | a GtkTable. | |
spacing | количество пикселей интервала между каждой строкой таблицы. |
gtk_table_set_col_spacings ()
void gtk_table_set_col_spacings (GtkTable *table,guint spacing);
gtk_table_set_col_spacings устарел начиная с версии 3.4 и не должен использоваться в новом коде.
Используйте gtk_grid_set_column_spacing() с GtkGrid.
Устанавливает расстояние между каждым столбцом в table равным spacing .
Параметры
table | a GtkTable. | |
spacing | количество пикселей интервала между каждым столбцом таблицы. |
gtk_table_set_homogeneous ()
void gtk_table_set_homogeneous (GtkTable *table,gboolean homogeneous);
gtk_table_set_homogeneous устарел начиная с версии 3.4 и не должен использоваться в новом коде.
Используйте gtk_grid_set_row_homogeneous() и gtk_grid_set_column_homogeneous() с GtkGrid.
Изменяет свойство однородности ячеек таблицы, т. е. одинакового ли размера все ячейки или нет.
Параметры
table | The GtkTable you wish to set the homogeneous properties of. | |
homogeneous | Set to |
gtk_table_get_default_row_spacing ()
guint
gtk_table_get_default_row_spacing (GtkTable *table); gtk_table_get_default_row_spacing устарел начиная с версии 3.4 и не должен использоваться в новом коде.
Используйте gtk_grid_get_row_spacing() с GtkGrid.
Получает стандартный интервал между строками таблицы. Это расстояние будет использоваться для вновь добавленных строк. (См. gtk_table_set_row_spacings())
Параметры
table | a GtkTable |
Возвращает
стандартный интервал между строками
gtk_table_get_homogeneous ()
gboolean
gtk_table_get_homogeneous (GtkTable *table); gtk_table_get_homogeneous устарел начиная с версии 3.4 и не должен использоваться в новом коде.
Используйте gtk_grid_get_row_homogeneous() и gtk_grid_get_column_homogeneous() с GtkGrid.
Возвращает, ограничены ли все ячейки таблицы одинаковой шириной и высотой. (См. gtk_table_set_homogeneous())
Параметры
table | a GtkTable |
Возвращает
TRUE если все ячейки ограничены одинаковым размером
gtk_table_get_row_spacing ()
guint gtk_table_get_row_spacing (GtkTable *table,guint row);
gtk_table_get_row_spacing устарел начиная с версии 3.4 и не должен использоваться в новом коде.
GtkGrid не предлагает замены для этой функциональности.
Получает количество пространства между строкой row и строкой row + 1. См. gtk_table_set_row_spacing().
Параметры
table | a GtkTable | |
row | строка в таблице, 0 обозначает первую строку |
Возвращает
интервал между строками
gtk_table_get_col_spacing ()
guint gtk_table_get_col_spacing (GtkTable *table,guint column);
gtk_table_get_col_spacing устарело начиная с версии 3.4 и не должно использоваться в новых кодах.
GtkGrid не предлагает замены для этой функциональности.
Получает количество пробела между колонкой col и колонкой col + 1. См. gtk_table_set_col_spacing().
Параметры
table | таблица GtkTable | |
column | столбец в таблице, 0 обозначает первый столбец |
Возвращаемое значение
расстояние между колонками
gtk_table_get_default_col_spacing ()
guint
gtk_table_get_default_col_spacing (GtkTable *table); gtk_table_get_default_col_spacing устарело начиная с версии 3.4 и не должно использоваться в новых кодах.
Используйте gtk_grid_get_column_spacing() с GtkGrid.
Получает стандартное расстояние между колонками для таблицы. Это расстояние будет использоваться для вновь добавленных колонок. (См. gtk_table_set_col_spacings())
Параметры
table | таблица GtkTable |
Возвращаемое значение
стандартное расстояние между колонками
Типы и значения
struct GtkTable
struct GtkTable;
перечисление GtkAttachOptions
Определяет свойства расширения виджета при изменении размеров его (или его родителя).
Элементы
GTK_EXPAND | виджет должен расширяться, чтобы занять любое дополнительное пространство в контейнере, которое было выделено. | |
GTK_SHRINK | виджет должен сжиматься по мере необходимости. | |
GTK_FILL | виджет должен заполнить выделенное ему пространство. |
Подробности свойств
Свойство “column-spacing”
“column-spacing” guint
Количество пробела между двумя последовательными колонками.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: <= 65535
Значение по умолчанию: 0
Свойство “homogeneous”
“homogeneous” gboolean
Если TRUE, ячейки таблицы имеют одинаковую ширину/высоту.
Владелец: GtkTable
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “n-columns”
“n-columns” guint
Количество колонок в таблице.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: [1,65535]
Значение по умолчанию: 1
Свойство “n-rows”
“n-rows” guint
Количество строк в таблице.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: [1,65535]
Значение по умолчанию: 1
Свойство “row-spacing”
“row-spacing” guint
Количество пробела между двумя последовательными строками.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: <= 65535
Значение по умолчанию: 0
Подробности свойств дочерних элементов
Свойство “bottom-attach” дочернего элемента
“bottom-attach” guint
Номер строки, к которой прикрепляется нижняя часть дочернего элемента.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: [1,65535]
Значение по умолчанию: 1
Свойство “left-attach” дочернего элемента
“left-attach” guint
Номер столбца, к которому прикрепляется левая сторона дочернего элемента.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: <= 65535
Значение по умолчанию: 0
Свойство “right-attach” дочернего элемента
“right-attach” guint
Номер столбца, к которому прикрепляется правая сторона дочернего виджета.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: [1,65535]
Значение по умолчанию: 1
Свойство “top-attach” дочернего элемента
“top-attach” guint
Номер строки, к которой прикрепляется верхняя часть дочернего виджета.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: <= 65535
Значение по умолчанию: 0
Свойство “x-options” дочернего элемента
“x-options” GtkAttachOptions
Параметры, определяющие горизонтальное поведение дочернего элемента.
Владелец: GtkTable
Флаги: Чтение / Запись
Значение по умолчанию: GTK_EXPAND | GTK_FILL
Свойство “x-padding” дочернего элемента
“x-padding” guint
Дополнительное пространство между дочерним элементом и его левым и правым соседями в пикселях.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: <= 65535
Значение по умолчанию: 0
Свойство “y-options” дочернего элемента
“y-options” GtkAttachOptions
Параметры, определяющие вертикальное поведение дочернего элемента.
Владелец: GtkTable
Флаги: Чтение / Запись
Значение по умолчанию: GTK_EXPAND | GTK_FILL
Свойство “y-padding” дочернего элемента
“y-padding” guint
Дополнительное пространство между дочерним элементом и его верхним и нижним соседями в пикселях.
Владелец: GtkTable
Флаги: Чтение / Запись
Допустимые значения: <= 65535
Значение по умолчанию: 0
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkTable.html