| |
![]() |
GTK+ Reference Manual |
||||
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties | Child Properties |
GtkTableGtkTable Табличная упаковка виджетов |
#include <gtk/gtk.h>
GtkTable;
GtkTableChild;
GtkTableRowCol;
GtkWidget* gtk_table_new (guint rows,
guint columns,
gboolean homogeneous);
void gtk_table_resize (GtkTable *table,
guint rows,
guint columns);
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);
void gtk_table_attach_defaults (GtkTable *table,
GtkWidget *widget,
guint left_attach,
guint right_attach,
guint top_attach,
guint bottom_attach);
void gtk_table_set_row_spacing (GtkTable *table,
guint row,
guint spacing);
void gtk_table_set_col_spacing (GtkTable *table,
guint column,
guint spacing);
void gtk_table_set_row_spacings (GtkTable *table,
guint spacing);
void gtk_table_set_col_spacings (GtkTable *table,
guint spacing);
void gtk_table_set_homogeneous (GtkTable *table,
gboolean homogeneous);
guint gtk_table_get_default_row_spacing
(GtkTable *table);
gboolean gtk_table_get_homogeneous (GtkTable *table);
guint gtk_table_get_row_spacing (GtkTable *table,
guint row);
guint gtk_table_get_col_spacing (GtkTable *table,
guint column);
guint gtk_table_get_default_col_spacing
(GtkTable *table);
GObject +----GInitiallyUnowned +----GtkObject +----GtkWidget +----GtkContainer +----GtkTable
GtkTable осуществляет AtkImplementorIface.
"column-spacing" guint : Read / Write "homogeneous" gboolean : Read / Write "n-columns" guint : Read / Write "n-rows" guint : Read / Write "row-spacing" guint : Read / Write
"bottom-attach" guint : Read / Write "left-attach" guint : Read / Write "right-attach" guint : Read / Write "top-attach" guint : Read / Write "x-options" GtkAttachOptions : Read / Write "x-padding" guint : Read / Write "y-options" GtkAttachOptions : Read / Write "y-padding" guint : Read / Write
Функции 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_set_homogeneous()
,
может использоваться для установки
изменяемости ячеек таблицы к размеру
большего виджета в таблице.
typedef struct _GtkTable GtkTable;
Структура GtkTable содержит данные для
существующей таблицы непосредственно.
children
это GList
всех виджетов таблицы. rows
и columns
являются указателями
структуры GtkTableRowCol,
которые содержат по умолчанию детали
расстояния и пространства для GtkTable's
строк и колонок, соответственно.
nrows
и ncols
целые
16bit значения хранящие количество строк
и колонок в таблице.
typedef struct {
GtkWidget *widget;
guint16 left_attach;
guint16 right_attach;
guint16 top_attach;
guint16 bottom_attach;
guint16 xpadding;
guint16 ypadding;
guint xexpand : 1;
guint yexpand : 1;
guint xshrink : 1;
guint yshrink : 1;
guint xfill : 1;
guint yfill : 1;
} GtkTableChild;
Поле widget
это указатель на
виджет которому принадлежит эта структура
GtkTableChild
. Поля
left_attach
, right_attach
,
top_attach
, и bottom_attach
определяют номера строк и колонок
которые создают невидимый прямоугольник
в который упаковывается виджет.
xpadding
и ypadding
определяет пространство между этим
виджетом и окружающей ячейки таблицы.
typedef struct {
guint16 requisition;
guint16 allocation;
guint16 spacing;
guint need_expand : 1;
guint need_shrink : 1;
guint expand : 1;
guint shrink : 1;
guint empty : 1;
} GtkTableRowCol;
Эти поля должны рассматриваться только для чтения и не должны изменяться непосредственно.
GtkWidget* gtk_table_new (guint rows, guint columns, gboolean homogeneous);
Используется для создания нового
табличного виджета. Начальный размер
можно задать определяя сколько строк
и столбцов в таблице должно быть, хотя
позже это можно изменить с помощью
gtk_table_resize()
. rows
и columns
должны оба быть в
пределах 0 .. 65535.
|
Количество строк в новой таблице. |
|
Количество столбцов в новой таблице. |
|
Если установлено |
Возвращает : |
Указатель на вновь созданный виджет таблицу. |
void gtk_table_resize (GtkTable *table, guint rows, guint columns);
Если вам нужно изменить размер таблицы после её создания, эта функция позволит вам сделать это.
|
GtkTable которой вы меняете размер. |
|
Новое число строк |
|
Новое число столбцов. |
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);
Добавляет виджет в таблицу. Число 'ячеек'
которые займет виджет определяется с
помощью left_attach
, right_attach
,
top_attach
и bottom_attach
.
Каждое представляет крайний левый,
крайний правый, высший и низший номера
столбцов и строк в таблице. (индексируются
начиная с нуля).
|
GtkTable в которую добавляется новый виджет. |
|
Добавляемый виджет. |
|
Номер столбца к которому слева прикрепляется дочерний виджет. |
|
Номер столбца к которому справа прикрепляется дочерний виджет. |
|
Номер строки к которой сверху прикрепляется дочерний виджет. |
|
Номер строки к основанию которой прикрепляется дочерний виджет. |
|
Используется для определения свойств дочернего виджета при изменении размера таблицы. |
|
Тоже что и xoptions, кроме поля определяющего поведение размера п овертикали. |
|
Целое значение определяющее дополнение справа и слева при добавлении виджета в таблицу. |
|
Количество дополнения сверху и снизу виджета. |
void gtk_table_attach_defaults (GtkTable *table, GtkWidget *widget, guint left_attach, guint right_attach, guint top_attach, guint bottom_attach);
Так же как существует много опций
связанных с gtk_table_attach()
,
эта функция удобства обеспечивает
программиста средствами добавления
дочернего виджета к таблице с идентичными
опциями дополнений и расширений. Значения
используемые для GtkAttachOptions
- GTK_EXPAND | GTK_FILL
и дополнение
устанавливаются в 0.
|
Таблица к которой добавляется виджет. |
|
Добавляемый дочерний виджет. |
|
Номер столбца к которому прикрепляется дочерний виджет с левой стороны. |
|
Номер столбца к которому прикрепляется дочерний виджет с правой стороны. |
|
Номер строки к вершине которой прикрепляется дочерний виджет. |
|
Номер строки в основание которой прикрепляется дочерний виджет. |
void gtk_table_set_row_spacing (GtkTable *table, guint row, guint spacing);
Изменяет свободное пространство между данной табличной строкой и окружающими.
|
GtkTable содержащая строку свойство которой вы хотите изменить. |
|
Номер строки у которой изменяется свободное пространство. |
|
Число пикселей на которое должен быть увеличен интервал. |
void gtk_table_set_col_spacing (GtkTable *table, guint column, guint spacing);
Изменяет свободное пространство между данным столбцом и находящимися рядом с ним.
|
|
|
Столбец чей интервал должен быть изменён. |
|
Число пикселей на которое должен измениться интервал. |
void gtk_table_set_row_spacings (GtkTable *table, guint spacing);
Устанавливает интервал между всеми
строками в table
равный spacing
.
|
|
|
Число пикселей интервала устанавливаемого для всех строк таблицы. |
void gtk_table_set_col_spacings (GtkTable *table, guint spacing);
Устанавливает интервал для всех столбцов
в table
равный spacing
.
|
|
|
Число пикселей интервала устанавливаемого для всех столбцов таблицы. |
void gtk_table_set_homogeneous (GtkTable *table, gboolean homogeneous);
Изменяет однородное (homogenous) свойство ячеек таблицы, то есть равен размер всех ячеек или нет.
|
GtkTable для которой устанавливается свойство однородности (homogeneous). |
|
Установленное |
guint gtk_table_get_default_row_spacing (GtkTable *table);
Получает значение по умолчанию интервала
строк таблицы. Это интервал который
будет использоваться для вновь добавляемых
строк. (Смотрите gtk_table_set_row_spacings()
)
|
|
Возвращает : |
Значение: интервал строк по умолчанию |
gboolean gtk_table_get_homogeneous (GtkTable *table);
Определяет однородны ячейки или нет.
(Смотрите gtk_table_set_homogenous()
)
|
|
Возвращает : |
|
guint gtk_table_get_row_spacing (GtkTable *table, guint row);
Получает интервал между строкой row
и строкой row
+ 1. Смотрите
gtk_table_set_row_spacing()
.
|
|
|
Строка в таблице, 0 сообщает о первой строке |
Возвращает : |
Строковый интервал |
guint gtk_table_get_col_spacing (GtkTable *table, guint column);
Получает интервал между столбцом col
и столбцом col
+ 1. Смотрите
gtk_table_set_col_spacing()
.
|
|
|
Столбец в таблице, 0 сообщает о первом столбце |
Возвращает : |
Интервал столбца |
guint gtk_table_get_default_col_spacing (GtkTable *table);
Получает интервал столбцов по умолчанию
для таблицы. Этот интервал используется
для вновь добавляемых столбцов. (Смотрите
gtk_table_set_col_spacings()
)
|
|
Возвращает : |
Значение: интервал столбца по умолчанию |
column-spacing
""column-spacing" guint : Read / Write
Размер интервала между двумя последовательными столбцами.
Значение по умолчанию: 0
homogeneous
""homogeneous" gboolean : Read / Write
Если TRUE то в таблице все ячейки однородны, то есть имеют одинаковый размер.
Значение по умолчанию: FALSE
n-columns
""n-columns" guint : Read / Write
Число столбцов в таблице.
Значение по умолчанию: 0
n-rows
""n-rows" guint : Read / Write
Число строк в таблице.
Значение по умолчанию: 0
row-spacing
""row-spacing" guint : Read / Write
Размер интервала между двумя последовательными строками.
Значение по умолчанию: 0
bottom-attach
""bottom-attach" guint : Read / Write
Номер строки у основания которой прикрепляется дочерний виджет.
Допустимые значения: [1,65535]
Значение по умолчанию: 1
left-attach
""left-attach" guint : Read / Write
Номер столбца к левой стороне которого прикрепляется дочерний виджет.
Допустимые значения: <= 65535
Значение по умолчанию: 0
right-attach
""right-attach" guint : Read / Write
Номер столбца к правой стороне которого прикрепляется дочерний виджет.
Допустимые значения: [1,65535]
Значение по умолчанию: 1
top-attach
""top-attach" guint : Read / Write
Номер строки к вершине которой прикрепляется дочерний виджет.
Допустимые значения: <= 65535
Значение по умолчанию: 0
x-options
""x-options" GtkAttachOptions : Read / Write
Опция определяющая горизонтальное поведение дочернего виджета.
Значение по умолчанию: GTK_EXPAND|GTK_FILL
x-padding
""x-padding" guint : Read / Write
Дополнительное пространство помещаемое между дочерним виджетом и его соседями справа и слева, в пикселах.
Допустимые значения: <= 65535
Значение по умолчанию: 0
y-options
""y-options" GtkAttachOptions : Read / Write
Опция определяющая вертикальное поведение дочернего виджета.
Значение по умолчанию: GTK_EXPAND|GTK_FILL
y-padding
""y-padding" guint : Read / Write
Дополнительное пространство помещаемое между дочерним виджетом и его соседями сверху и снизу, в пикселах.
Допустимые значения: <= 65535
Значение по умолчанию: 0
Только вертикальная упаковка виджетов. |
|
Только горизонтальная упаковка виджетов. |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |