| |
GTK+ Reference Manual |
||||
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties | Style Properties | Signals |
GtkExpanderGtkExpander Контейнер способный скрывать дочерний виджет |
#include <gtk/gtk.h> GtkExpander; GtkWidget* gtk_expander_new (const gchar *label); GtkWidget* gtk_expander_new_with_mnemonic (const gchar *label); void gtk_expander_set_expanded (GtkExpander *expander, gboolean expanded); gboolean gtk_expander_get_expanded (GtkExpander *expander); void gtk_expander_set_spacing (GtkExpander *expander, gint spacing); gint gtk_expander_get_spacing (GtkExpander *expander); void gtk_expander_set_label (GtkExpander *expander, const gchar *label); const gchar* gtk_expander_get_label (GtkExpander *expander); void gtk_expander_set_use_underline (GtkExpander *expander, gboolean use_underline); gboolean gtk_expander_get_use_underline (GtkExpander *expander); void gtk_expander_set_use_markup (GtkExpander *expander, gboolean use_markup); gboolean gtk_expander_get_use_markup (GtkExpander *expander); void gtk_expander_set_label_widget (GtkExpander *expander, GtkWidget *label_widget); GtkWidget* gtk_expander_get_label_widget (GtkExpander *expander);
GObject +----GInitiallyUnowned +----GtkObject +----GtkWidget +----GtkContainer +----GtkBin +----GtkExpander
GtkExpander осуществляет AtkImplementorIface.
"expanded" gboolean : Read / Write / Construct "label" gchararray : Read / Write / Construct "label-widget" GtkWidget : Read / Write "spacing" gint : Read / Write "use-markup" gboolean : Read / Write / Construct "use-underline" gboolean : Read / Write / Construct
"expander-size" gint : Read "expander-spacing" gint : Read
"activate" void user_function (GtkExpander *expander, gpointer user_data) : Run last / Action
GtkExpander позволяет скрывать или показывать свой дочерний виджет пользователю нажимая на расширительный треугольник похожий на треугольник используемый в GtkTreeView.
Обычно расширитель используется как
любой другой потомок GtkBin;
вы создаёте дочерний виджет и используя
gtk_container_add()
добавляете его в расширитель. Когда
расширитель переключается, он будет
автоматически скрывать и показывать
свой дочерний виджет.
Есть ситуации когда вам нужно отображать
и скрывать виджет расширителя
самостоятельно, например когда вы хотите
создать виджет вовремя расширения. В
этом случае, создаётся GtkExpander
но к нему не добавляется дочерний виджет.
Расширительный виджет имеет expanded
свойство которое может быть использовано
для мониторинга состояния расширения.
Вы должны отслеживать это свойство с
помощь сигнала, например так:
expander = gtk_expander_new_with_mnemonic ("_More Options"); g_signal_connect (expander, "notify::expanded", G_CALLBACK (expander_callback), NULL); ... static void expander_callback (GObject *object, GParamSpec *param_spec, gpointer user_data) { GtkExpander *expander; expander = GTK_EXPANDER (object); if (gtk_expander_get_expanded (expander)) { /* Показываемые или создаваемые виджеты */ } else { /* Скрываемые или разрушаемые виджеты */ } }
typedef struct _GtkExpander GtkExpander;
GtkWidget* gtk_expander_new (const gchar *label);
Создаёт новый расширитель использующий
label
как текст метки.
|
Текст метки |
Возвращает: |
Новый виджет GtkExpander. |
Начиная с версии 2.4
GtkWidget* gtk_expander_new_with_mnemonic (const gchar *label);
Создаёт новый расширитель использующий
label
как текст метки. Если
знакам в label
предшествует
подчёркивание, то они подчёркиваются.
Если вам нужен знак подчёркивания перед
меткой, используйте '__' (двойное
подчёркивание). Первый подчёркнутый
знак представляет клавиатурный
акселератор называемый мнемоник. Нажатие
клавиши Alt и этой клавиши активизирует
кнопку.
|
текст метки с подчеркиванием перед мнемоническим знаком |
Возвращает: |
Новый виджет GtkExpander. |
Начиная с версии 2.4
void gtk_expander_set_expanded (GtkExpander *expander, gboolean expanded);
Устанавливает состояние расширителя.
Установите TRUE
,
если вы хотите сделать дочерний виджет
отображаемым, а FALSE
если вы хотите сделать дочерний виджет
скрытым.
|
|
|
Должен ли отображаться дочерний виджет |
Начиная с версии 2.4
gboolean gtk_expander_get_expanded (GtkExpander *expander);
Запрашивает GtkExpander и возвращает
текущеме состояние. Возвращается TRUE
если дочерний виджет отображаем.
Смотрите gtk_expander_set_expanded()
.
|
|
Возвращает: |
Текущее состояние расширителя. |
Начиная с версии 2.4
void gtk_expander_set_spacing (GtkExpander *expander, gint spacing);
Устанавливает свободное пространство
expander
, которое является
числом пикселей между расширителем и
дочерним виджетом.
|
|
|
Промежуток между расширителем и дочерним виджетом в пикселах. |
Начиная с версии 2.4
gint gtk_expander_get_spacing (GtkExpander *expander);
Получает значение установленное
gtk_expander_set_spacing()
.
|
|
Возвращает: |
Промежуток между расширителем и дочерним виджетом. |
Начиная с версии 2.4
void gtk_expander_set_label (GtkExpander *expander, const gchar *label);
Устанавливает текст метки расширителя
равным label
.
Это также очищает предварительно установленную метку.
|
|
|
Стока |
Начиная с версии 2.4
const gchar* gtk_expander_get_label (GtkExpander *expander);
Извлекает текст из метки расширителя,
которая установлена функцией
gtk_expander_set_label()
.
Если текст метки не установлен возвращается
NULL
.
Это происходит при создании пустой
кнопки с помощью gtk_button_new()
используемой как контейнер.
|
|
Возвращает: |
Текст метки виджета. Этой строкой владеет виджет и она не должна изменяться или высвобождаться. |
Начиная с версии 2.4
void gtk_expander_set_use_underline (GtkExpander *expander, gboolean use_underline);
Если установлено TRUE, подчеркивание в тексте метки расширителя сообщает что следующий знак должен использоваться как клавиша мнемонического акселератора.
|
|
|
|
Начиная с версии 2.4
gboolean gtk_expander_get_use_underline (GtkExpander *expander);
Определяет является ли подчёркивание
в метки расширителя индикатором
мнемоника. Смотрите
gtk_expander_set_use_underline()
.
|
|
Возвращает: |
|
Начиная с версии 2.4
void gtk_expander_set_use_markup (GtkExpander *expander, gboolean use_markup);
Устанавливает содержит ли текст метки
разметку в Pango's
text markup language. Смотрите gtk_label_set_markup()
.
|
|
|
|
Начиная с версии 2.4
gboolean gtk_expander_get_use_markup (GtkExpander *expander);
Определяет интерпретируется ли текст
метки как разметка Pango
text markup language. Смотрите
gtk_expander_set_use_markup()
.
|
|
Возвращает: |
|
Начиная с версии 2.4
void gtk_expander_set_label_widget (GtkExpander *expander, GtkWidget *label_widget);
Устанавливает ярлык виджет для расширителя. Это виджет который будет вложен рядом со стрелкой расширителя.
|
|
|
Новый виджет ярлык |
Начиная с версии 2.4
GtkWidget* gtk_expander_get_label_widget (GtkExpander *expander);
Восстанавливает ярлык виджет для
конструкции. Смотрите
gtk_expander_set_label_widget()
.
|
|
Возвращает: |
Ярлык виджет, или |
Начиная с версии 2.4
expanded
""expanded" gboolean : Read / Write / Construct
Открыт ли расширитель для отображения дочернего виджета.
Значение по умолчанию: FALSE
label
""label" gchararray : Read / Write / Construct
Текст метки расширителя.
Значение по умолчанию: NULL
label-widget
""label-widget" GtkWidget : Read / Write
Ярлык виджет для отображения вместо обычной метки.
spacing
""spacing" gint : Read / Write
Промежуток между меткой и дочерним виджетом.
Допустимые значения: >= 0
Значение по умолчанию: 0
use-markup
""use-markup" gboolean : Read / Write / Construct
Текст метки включающий XML разметку. Смотрите pango_parse_markup().
Значение по умолчанию: FALSE
use-underline
""use-underline" gboolean : Read / Write / Construct
Если установлено, подчеркивание текста перед первым знаком указывает на мнемонический акселератор.
Значение по умолчанию: FALSE
expander-size
""expander-size" gint : Read
Размер стрелки расширителя.
Допустимые значения: >= 0
Значение по умолчанию: 10
expander-spacing
""expander-spacing" gint : Read
Интервал вокруг стрелки расширителя.
Допустимые значения: >= 0
Значение по умолчанию: 2
void user_function (GtkExpander *expander, gpointer user_data) : Run last / Action
|
Объект получающий сигнал. |
|
Пользовательские данные устанавливаемые при подключении обработчика сигнала. |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |