| 
 | |
|  | 
| GTK+ Reference Manual | ||||
|---|---|---|---|---|
| GtkSizeGroupGtkSizeGroup Группирует виджеты таким образом, чтобы они запрашивали один и тот же размер | 
#include <gtk/gtk.h>
            GtkSizeGroup;
enum        GtkSizeGroupMode;
GtkSizeGroup* gtk_size_group_new            (GtkSizeGroupMode mode);
void        gtk_size_group_set_mode         (GtkSizeGroup *size_group,
                                             GtkSizeGroupMode mode);
GtkSizeGroupMode gtk_size_group_get_mode    (GtkSizeGroup *size_group);
void        gtk_size_group_set_ignore_hidden
                                            (GtkSizeGroup *size_group,
                                             gboolean ignore_hidden);
gboolean    gtk_size_group_get_ignore_hidden
                                            (GtkSizeGroup *size_group);
void        gtk_size_group_add_widget       (GtkSizeGroup *size_group,
                                             GtkWidget *widget);
void        gtk_size_group_remove_widget    (GtkSizeGroup *size_group,
                                             GtkWidget *widget);
GSList*     gtk_size_group_get_widgets      (GtkSizeGroup *size_group);
GObject +----GtkSizeGroup
"ignore-hidden" gboolean : Read / Write "mode" GtkSizeGroupMode : Read / Write
GtkSizeGroup обеспечивает механизм группировки виджетов таким образом, чтобы они занимали одинаковое количество пространства. Это полезно когда вам нужно привести столбцы виджета к одинаковому размеру, но вы не можете использовать GtkTable.
Подробнее, размер запрашиваемый для
каждого виджета в GtkSizeGroup это
максимальный размер который запрашивает
каждый виджет в групповом размере, если
они не в групповом размере. Режим
группового размера (смотрите
gtk_size_group_set_mode())
определяет применяется ли горизонтальный,
вертикальный, или оба размера. 
Помните, групповой размер влияет
только на объём запрашиваемого
пространства, не на конечный размер
получаемый виджетом. Если вам нужны
виджеты в GtkSizeGroup фактически
одного размера, вам нужно упаковать их
таким образом, чтобы они получили размер
не больше запрашиваемого. Например,
если вы упаковываете ваши виджеты в
таблицу, вы не должны включать флажок
GTK_FILL.
GtkSizeGroup объекты являются
ссылками на каждый виджет в групповом
размере, так как только вы добавляете
все виджеты в  GtkSizeGroup, вы можете
сбросить начальную ссылку для группового
размера с помощью g_object_unref().
Если виджеты в групповом размере
последовательно уничтожены, то они
будут удалены из группового размера и
сброшена их ссылка на групповой размер;
когда все виджеты удалены, групповой
размер освобождается. 
Виджеты могут быть частью множества
групповых размеров; GTK+ рассчитает
горизонтальный размер виджета из
горизонтального запроса всех виджетов
которые могут быть досягаемы из цепочки
групповых размеров типа
GTK_SIZE_GROUP_HORIZONTAL
или GTK_SIZE_GROUP_BOTH,
а вертикальный размер из вертикального
запроса всех виджетов которые могут
быть досягаемы в цепочке групповых
размеров типа GTK_SIZE_GROUP_VERTICAL
или GTK_SIZE_GROUP_BOTH.
typedef struct _GtkSizeGroup GtkSizeGroup;
typedef enum {
  GTK_SIZE_GROUP_NONE,
  GTK_SIZE_GROUP_HORIZONTAL,
  GTK_SIZE_GROUP_VERTICAL,
  GTK_SIZE_GROUP_BOTH
} GtkSizeGroupMode;Режим группового размера определяется направлением в котором групповой размер влияет на запрашиваемые размеры виджетов которыми укомплектован.
| Группа не имеет эффекта | |
| Группа влияет на горизонтальный размер | |
| Группа влияет на вертикальный размер | |
| Группа влияет на горизонтальный и вертикальный размер | 
GtkSizeGroup* gtk_size_group_new (GtkSizeGroupMode mode);
Создаёт новый GtkSizeGroup.
| 
 | Режим для нового группового размера. | 
| Возвращает : | Вновь созданный GtkSizeGroup | 
void        gtk_size_group_set_mode         (GtkSizeGroup *size_group,
                                             GtkSizeGroupMode mode);
Устанавливает GtkSizeGroupMode
группового размера. Режим группового
размера определяет в каком направлении
влияет групповой размер на размер
виджетов входящих в его состав -
горизонтальный (GTK_SIZE_GROUP_MODE_HORIZONTAL),
вертикальный (GTK_SIZE_GROUP_MODE_VERTICAL),
или на оба размера (GTK_SIZE_GROUP_MODE_BOTH).
| 
 | |
| 
 | Режим устанавливаемый для группового размера. | 
GtkSizeGroupMode gtk_size_group_get_mode (GtkSizeGroup *size_group);
Определяет текущий режим группового
размера. Смотрите gtk_size_group_set_mode().
| 
 | |
| Возвращает : | Текущий режим группового размера. | 
void        gtk_size_group_set_ignore_hidden
                                            (GtkSizeGroup *size_group,
                                             gboolean ignore_hidden);Устанавливает должен ли игнорироваться не видимый (unmapped) виджет при расчете размера.
| 
 | |
| 
 | должен ли игнорироваться не видимый (unmapped) виджет при расчете размера | 
Начиная с версии 2.8
gboolean    gtk_size_group_get_ignore_hidden
                                            (GtkSizeGroup *size_group);Определяет если не видимый виджет игнорируется при расчете размера.
| 
 | |
| Возвращает : | 
 | 
Начиная с версии 2.8
void        gtk_size_group_add_widget       (GtkSizeGroup *size_group,
                                             GtkWidget *widget);
Добавляет виджеты в GtkSizeGroup. В
будущем, размер виджета будет определяться
как максимум его реквизиции и размеров
других виджетов в групповом размере. К
каким направлениям размера это будет
относиться зависит от режима группового
размера. Смотрите gtk_size_group_set_mode().
| 
 | |
| 
 | GtkWidget для добавления | 
void        gtk_size_group_remove_widget    (GtkSizeGroup *size_group,
                                             GtkWidget *widget);Удаляет виджеты из GtkSizeGroup.
| 
 | GtkSizeGrup | 
| 
 | GtkWidget для удаления | 
GSList* gtk_size_group_get_widgets (GtkSizeGroup *size_group);
Возвращает список виджетов связанных
с size_group.
| 
 | GtkSizeGrup | 
| Возвращает : | GSList виджетов. Списком владеет GTK+ и он не должен модифицироваться. | 
Начиная с версии 2.10
ignore-hidden""ignore-hidden" gboolean : Read / Write
Если TRUE,
не видимый (unmapped) виджет игнорируется
при расчете размера группы.
Значение по умолчанию: FALSE
Начиная с версии 2.8
mode""mode" GtkSizeGroupMode : Read / Write
Направление в котором групповой размер оказывает влияние на размер виджетов входящих в его состав.
Значение по умолчанию: GTK_SIZE_GROUP_HORIZONTAL
| Закладки на сайте Проследить за страницей | Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |