| 
 | |
|  | 
| 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-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |