Spec-Zone.ru › GTK 3.20

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
перечисление 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

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 вы хотите установить однородные свойства.

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

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

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

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

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

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

Свойство “homogeneous”

  “homogeneous”              gboolean

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

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

Значение по умолчанию: ЛОЖЬ

Свойство “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.20/GtkTable.html

Spec-Zone.ru

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