Spec-Zone.ru › GTK 3.24

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

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 you wish to set the homogeneous properties of.

homogeneous

Set to TRUE to ensure all table cells are the same size. Set to FALSE if this is not your desired behaviour.

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

См. также

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.24/GtkTable.html

Spec-Zone.ru

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