GtkRadioMenuItem
GtkRadioMenuItem — Выбор из нескольких элементов меню с возможностью выбора одного
Функции
Свойства
| GtkRadioMenuItem * | group | Write |
Сигналы
| void | group-changed | Run First |
Типы и значения
| struct | GtkRadioMenuItem |
Иерархия объектов
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBin ╰── GtkMenuItem ╰── GtkCheckMenuItem ╰── GtkRadioMenuItem
Реализованные интерфейсы
GtkRadioMenuItem реализует AtkImplementorIface, GtkBuildable, GtkActivatable и GtkActionable.
Включенные файлы
#include <gtk/gtk.h>
Описание
Элемент меню радиокнопки — это элемент меню с возможностью выбора, который принадлежит группе. В каждый момент времени ровно один элемент меню радиокнопки из группы выбран.
Список групп не нужно освобождать, так как каждый GtkRadioMenuItem удалит себя и свой элемент списка при уничтожении.
Правильный способ создания группы элементов меню радиокнопки примерно такой:
Как создать группу элементов меню радиокнопки.
CSS-узлы
GtkRadioMenuItem имеет главный CSS-узел с именем menuitem и под-узел с именем radio, который получает стиль класса .left или .right.
Функции
gtk_radio_menu_item_new ()
GtkWidget *
gtk_radio_menu_item_new (GSList *group); Создаёт новый GtkRadioMenuItem.
Параметры
group | группа, к которой будет прикреплён пункт радиоменю, или | [element-type GtkRadioMenuItem][allow-none] |
Возвращает
новый GtkRadioMenuItem
gtk_radio_menu_item_new_with_label ()
GtkWidget * gtk_radio_menu_item_new_with_label (GSList *group,const gchar *label);
Создаёт новый GtkRadioMenuItem, подчинённый простому GtkLabel.
Параметры
group | группа, в которой находится пункт радиоменю, или | [element-type GtkRadioMenuItem][allow-none] |
label | текст метки |
gtk_radio_menu_item_new_with_mnemonic ()
GtkWidget * gtk_radio_menu_item_new_with_mnemonic (GSList *group,const gchar *label);
Создаёт новый GtkRadioMenuItem с меткой. Метка создаётся с помощью gtk_label_new_with_mnemonic(), поэтому подчёркивания в label указывают мнемоническую последовательность пункта меню.
Параметры
group | группа, в которой находится пункт радиоменю, или | [element-type GtkRadioMenuItem][allow-none] |
label | текст кнопки, с подчёркиванием перед мнемоническим символом |
Возвращает
новый GtkRadioMenuItem
gtk_radio_menu_item_new_from_widget ()
GtkWidget *
gtk_radio_menu_item_new_from_widget (GtkRadioMenuItem *group); Создаёт новый GtkRadioMenuItem, добавляя его в ту же группу, что и group .
[constructor]
Параметры
group | Существующий GtkRadioMenuItem. | [allow-none] |
С: 2.4
gtk_radio_menu_item_new_with_label_from_widget ()
GtkWidget * gtk_radio_menu_item_new_with_label_from_widget (GtkRadioMenuItem *group,const gchar *label);
Создаёт новый GtkRadioMenuItem, подчинённый простому GtkLabel. Новый GtkRadioMenuItem добавляется в ту же группу, что и group .
[constructor]
Параметры
group | существующий GtkRadioMenuItem. | [allow-none] |
label | текст метки. | [allow-none] |
С: 2.4
gtk_radio_menu_item_new_with_mnemonic_from_widget ()
GtkWidget * gtk_radio_menu_item_new_with_mnemonic_from_widget (GtkRadioMenuItem *group,const gchar *label);
Создаёт новый GtkRadioMenuItem с меткой. Метка создаётся с помощью gtk_label_new_with_mnemonic(), поэтому подчёркивания в метке указывают мнемоническую последовательность пункта меню.
Новый GtkRadioMenuItem добавляется в ту же группу, что и group .
[constructor]
Параметры
group | Существующий GtkRadioMenuItem. | [allow-none] |
label | текст кнопки, с подчёркиванием перед мнемоническим символом. | [allow-none] |
С: 2.4
gtk_radio_menu_item_set_group ()
void gtk_radio_menu_item_set_group (GtkRadioMenuItem *radio_menu_item,GSList *group);
Устанавливает или изменяет группу пункта радиоменю.
Параметры
radio_menu_item | элемент GtkRadioMenuItem. | |
group | новая группа, или | [element-type GtkRadioMenuItem][allow-none] |
gtk_radio_menu_item_get_group ()
GSList *
gtk_radio_menu_item_get_group (GtkRadioMenuItem *radio_menu_item); Возвращает группу, к которой относится элемент радио-меню, в виде GList элементов GtkRadioMenuItem. Список принадлежит GTK+ и не должен освобождаться.
Параметры
radio_menu_item | элемент GtkRadioMenuItem |
Возвращаемое значение
группа radio_menu_item .
[element-type GtkRadioMenuItem][transfer none]
gtk_radio_menu_item_join_group ()
void gtk_radio_menu_item_join_group (GtkRadioMenuItem *radio_menu_item,GtkRadioMenuItem *group_source);
Присоединяет объект GtkRadioMenuItem к группе другого объекта GtkRadioMenuItem.
Эта функция должна использоваться языковыми связками для избежания управления памятью неявного GSList элементов gtk_radio_menu_item_get_group() и gtk_radio_menu_item_set_group().
Типичный способ создания группы элементов GtkRadioMenuItem:
GSList *group = NULL; GtkWidget *item; gint i; for (i = 0; i < 5; i++) { item = gtk_radio_menu_item_new_with_label (group, "This is an example"); group = gtk_radio_menu_item_get_group (GTK_RADIO_MENU_ITEM (item)); if (i == 1) gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), TRUE); }
Параметры
radio_menu_item | элемент GtkRadioMenuItem | |
group_source | элемент GtkRadioMenuItem, к группе которого мы присоединяемся, или | [allow-none] |
С: 3.18
Типы и Значения
struct GtkRadioMenuItem
struct GtkRadioMenuItem;
Подробности свойств
Свойство “group”
“group” GtkRadioMenuItem *
Элемент радио-меню, к группе которого относится данный виджет.
Флаги: Запись
С: 2.8
Подробности сигналов
Сигнал “group-changed”
void user_function (GtkRadioMenuItem *radiomenuitem, gpointer user_data)
Флаги: Run First
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.22/GtkRadioMenuItem.html