Spec-Zone.ru › GTK 3.22

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 Чтение / Запись

Типы и значения

структура GtkTable
перечисление 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(), может быть использован для установки того, будут ли все ячейки в таблице изменять свой размер до размера самого большого виджета в таблице.

GtkTable устарел. Используйте GtkGrid вместо него. Он предоставляет те же возможности, что и GtkTable для организации виджетов в прямоугольной сетке, но поддерживает управление геометрией высотой-для-ширины.

Функции

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

Если установлено в TRUE, все ячейки таблицы изменяют свой размер до размера ячейки, содержащей самый большой виджет.

Возвращает

Указатель на недавно созданный виджет таблицы.

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

Место для хранения количества строк, или NULL.

[out][allow-none]

columns

Место для хранения количества столбцов, или NULL.

[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

таблица 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

Таблица GtkTable, для которой вы хотите установить свойства однородности.

homogeneous

Установите в значение TRUE, чтобы гарантировать, что все ячейки таблицы имеют одинаковый размер. Установите в значение FALSE, если это поведение вам не нужно.

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

a 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

a GtkTable

Возвращаемое значение

стандартный отступ столбца

Типы и значения

struct GtkTable

struct GtkTable;

перечисление GtkAttachOptions

Определяет свойства расширения виджета при изменении размеров его (или его родителя).

Элементы

GTK_EXPAND

виджет должен расширяться, занимая всё свободное пространство контейнера.

GTK_SHRINK

виджет должен уменьшаться по мере возможности.

GTK_FILL

виджет должен заполнить выделенное ему место.

Подробности свойств

Свойство “column-spacing”

  “column-spacing”           guint

Количество места между двумя последовательными столбцами.

Флаги: Чтение / Запись

Допустимые значения: <= 65535

Значение по умолчанию: 0

Свойство “homogeneous”

  “homogeneous”              gboolean

Если TRUE, ячейки таблицы имеют одинаковую ширину/высоту.

Флаги: Чтение / Запись

Значение по умолчанию: FALSE

Свойство “n-columns”

  “n-columns”                guint

Количество столбцов в таблице.

Флаги: Чтение / Запись

Допустимые значения: [1,65535]

Значение по умолчанию: 1

Свойство “n-rows”

  “n-rows”                   guint

Количество строк в таблице.

Флаги: Чтение / Запись

Допустимые значения: [1,65535]

Значение по умолчанию: 1

Свойство “row-spacing”

  “row-spacing”              guint

Количество места между двумя последовательными строками.

Флаги: Чтение / Запись

Допустимые значения: <= 65535

Значение по умолчанию: 0

Подробности свойств дочерних элементов

Свойство “bottom-attach” дочернего элемента

  “bottom-attach”            guint

Номер строки, к которой прикрепляется нижняя часть дочернего элемента.

Флаги: Чтение / Запись

Допустимые значения: [1,65535]

Значение по умолчанию: 1

Свойство “left-attach” дочернего элемента

  “left-attach”              guint

Номер столбца, к которому прикрепляется левая сторона дочернего элемента.

Флаги: Чтение / Запись

Допустимые значения: <= 65535

Значение по умолчанию: 0

Свойство “right-attach” дочернего элемента

  “right-attach”             guint

Номер столбца, к которому прикрепляется правая сторона дочернего виджета.

Флаги: Чтение / Запись

Допустимые значения: [1,65535]

Значение по умолчанию: 1

Свойство “top-attach” дочернего элемента

  “top-attach”               guint

Номер строки, к которой прикрепляется верхняя часть дочернего виджета.

Флаги: Чтение / Запись

Допустимые значения: <= 65535

Значение по умолчанию: 0

Свойство “x-options” дочернего элемента

  “x-options”                GtkAttachOptions

Параметры, определяющие горизонтальное поведение дочернего элемента.

Флаги: Чтение / Запись

Значение по умолчанию: GTK_EXPAND | GTK_FILL

Свойство “x-padding” дочернего элемента

  “x-padding”                guint

Дополнительное пространство между дочерним элементом и его левым и правым соседями в пикселях.

Флаги: Чтение / Запись

Допустимые значения: <= 65535

Значение по умолчанию: 0

Свойство “y-options” дочернего элемента

  “y-options”                GtkAttachOptions

Параметры, определяющие вертикальное поведение дочернего элемента.

Флаги: Чтение / Запись

Значение по умолчанию: GTK_EXPAND | GTK_FILL

Свойство “y-padding” дочернего элемента

  “y-padding”                guint

Дополнительное пространство между дочерним элементом и его верхним и нижним соседями в пикселях.

Флаги: Чтение / Запись

Допустимые значения: <= 65535

Значение по умолчанию: 0

См. также

GtkGrid

© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.22/GtkTable.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API