Spec-Zone.ru › GTK 3.22

GtkToggleButton

GtkToggleButton — Создание кнопок, сохраняющих своё состояние

Функции

GtkWidget * gtk_toggle_button_new ()
GtkWidget * gtk_toggle_button_new_with_label ()
GtkWidget * gtk_toggle_button_new_with_mnemonic ()
void gtk_toggle_button_set_mode ()
gboolean gtk_toggle_button_get_mode ()
void gtk_toggle_button_toggled ()
gboolean gtk_toggle_button_get_active ()
void gtk_toggle_button_set_active ()
gboolean gtk_toggle_button_get_inconsistent ()
void gtk_toggle_button_set_inconsistent ()

Свойства

gboolean active Чтение / Запись
gboolean draw-indicator Чтение / Запись
gboolean inconsistent Чтение / Запись

Сигналы

void toggled Выполняется первым

Типы и значения

struct GtkToggleButton

Иерархия объектов

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBin
                    ╰── GtkButton
                        ╰── GtkToggleButton
                            ├── GtkCheckButton
                            ╰── GtkMenuButton

Реализованные интерфейсы

GtkToggleButton реализует AtkImplementorIface, GtkBuildable, GtkActionable и GtkActivatable.

Файлы заголовков

#include <gtk/gtk.h>

Описание

A GtkToggleButton — это GtkButton, который остаётся «нажатым» после нажатия. Нажатие повторно вернёт переключатель в исходное состояние.

Переключатель создаётся путём вызова либо gtk_toggle_button_new(), либо gtk_toggle_button_new_with_label(). Если используется первый вариант, рекомендуется разместить виджет (такой как GtkLabel и/или GtkImage) в контейнер переключателя. (См. GtkButton для получения дополнительной информации).

Состояние GtkToggleButton можно установить явно с помощью gtk_toggle_button_set_active() и получить с помощью gtk_toggle_button_get_active().

Для простого переключения состояния переключателя используйте gtk_toggle_button_toggled().

CSS узлы

GtkToggleButton имеет единственный CSS узел с именем button. Для различения его от обычной GtkButton применяется стилистический класс .toggle.

Создание двух виджетов GtkToggleButton.

void make_toggles (void) {
   GtkWidget *dialog, *toggle1, *toggle2;
   GtkWidget *content_area;
   const char *text;

   dialog = gtk_dialog_new (text);
   content_area = gtk_dialog_get_content_area ();

   text = "Hi, i’m a toggle button.";
   toggle1 = gtk_toggle_button_new_with_label (text);

   // Makes this toggle button invisible
   gtk_toggle_button_set_mode (GTK_TOGGLE_BUTTON (toggle1),
                               TRUE);

   g_signal_connect (toggle1, "toggled",
                     G_CALLBACK (output_state),
                     NULL);
   gtk_box_pack_start (GTK_BOX (content_area),
                       toggle1, FALSE, FALSE, 2);

   text = "Hi, i’m a toggle button.";
   toggle2 = gtk_toggle_button_new_with_label (text);
   gtk_toggle_button_set_mode (GTK_TOGGLE_BUTTON (toggle2),
                               FALSE);
   g_signal_connect (toggle2, "toggled",
                     G_CALLBACK (output_state),
                     NULL);
   gtk_box_pack_start (GTK_BOX (content_area),
                       toggle2, FALSE, FALSE, 2);

   gtk_widget_show_all (dialog);
}

Функции

gtk_toggle_button_new ()

GtkWidget *
gtk_toggle_button_new (void);

Создаёт новую кнопку переключения. Внутри виджета должна быть размещена какая-либо компонент, как в gtk_button_new().

Возвращаемое значение

новая кнопка переключения.

gtk_toggle_button_new_with_label ()

GtkWidget *
gtk_toggle_button_new_with_label (const gchar *label);

Создаёт новую кнопку переключения с текстовой меткой.

Параметры

метка

строка с сообщением, которое нужно поместить в кнопку переключения.

Возвращаемое значение

новая кнопка переключения.

gtk_toggle_button_new_with_mnemonic ()

GtkWidget *
gtk_toggle_button_new_with_mnemonic (const gchar *label);

Создаёт новую GtkToggleButton с меткой. Метка создаётся с помощью gtk_label_new_with_mnemonic(), поэтому символы с нижним подчеркиванием в label обозначают мнемонику для кнопки.

Параметры

метка

текст кнопки с нижним подчеркиванием перед символом мнемоники

Возвращаемое значение

новая GtkToggleButton

gtk_toggle_button_set_mode ()

void
gtk_toggle_button_set_mode (GtkToggleButton *toggle_button,
                            gboolean draw_indicator);

Устанавливает, отображается ли кнопка как отдельный индикатор и метка. Вы можете вызвать эту функцию для переключателя или радиокнопки с draw_indicator = FALSE, чтобы кнопка выглядела как обычная кнопка.

Это можно использовать для создания связанной полосы кнопок, которая работает как GtkStackSwitcher.

Эта функция влияет только на экземпляры классов, таких как GtkCheckButton и GtkRadioButton, которые наследуются от GtkToggleButton, а не на экземпляры GtkToggleButton самого по себе.

Параметры

кнопка_переключения

GtkToggleButton

отображать_индикатор

если TRUE, отображать кнопку как отдельный индикатор и метку; если FALSE, отображать кнопку как обычную кнопку

gtk_toggle_button_get_mode ()

gboolean
gtk_toggle_button_get_mode (GtkToggleButton *toggle_button);

Возвращает, отображается ли кнопка как отдельный индикатор и метка. См. gtk_toggle_button_set_mode().

Параметры

кнопка_переключения

GtkToggleButton

Возвращаемое значение

TRUE, если кнопка переключения отображается как отдельный индикатор и метка.

gtk_toggle_button_toggled ()

void
gtk_toggle_button_toggled (GtkToggleButton *toggle_button);

Вызывает сигнал “переключена” для GtkToggleButton. У приложения нет оснований для вызова этой функции.

Параметры

кнопка_переключения

GtkToggleButton.

gtk_toggle_button_get_active ()

gboolean
gtk_toggle_button_get_active (GtkToggleButton *toggle_button);

Получает состояние GtkToggleButton. Возвращает TRUE, если кнопка переключения нажата, и FALSE, если нет.

Параметры

кнопка_переключения

GtkToggleButton.

Возвращаемое значение

значение gboolean.

gtk_toggle_button_set_active ()

void
gtk_toggle_button_set_active (GtkToggleButton *toggle_button,
                              gboolean is_active);

Устанавливает состояние кнопки переключения. Установите значение TRUE, чтобы кнопка GtkToggleButton была нажата, и FALSE, чтобы снять нажатие. Это действие вызывает срабатывание сигнала “переключена” и сигнала “нажата”.

Параметры

кнопка_переключения

GtkToggleButton.

активная

TRUE или FALSE.

gtk_toggle_button_get_inconsistent ()

gboolean
gtk_toggle_button_get_inconsistent (GtkToggleButton *toggle_button);

Получает значение, установленное функцией gtk_toggle_button_set_inconsistent().

Параметры

кнопка_переключения

GtkToggleButton

Возвращаемое значение

TRUE, если кнопка отображается как несогласованная, FALSE в противном случае

gtk_toggle_button_set_inconsistent ()

void
gtk_toggle_button_set_inconsistent (GtkToggleButton *toggle_button,
                                    gboolean setting);

Если пользователь выбрал диапазон элементов (например, текст или ячейки таблицы), которые затронуты кнопкой переключения, и текущие значения в этом диапазоне несогласованны, вы можете отобразить кнопку в «промежуточном» состоянии. Эта функция включает отображение «промежуточного» состояния. Обычно вы отключаете несогласованное состояние, если пользователь переключает кнопку. Это действие влияет только на визуальное отображение, не влияя на семантику кнопки.

Параметры

кнопка_переключения

GtkToggleButton

установка

TRUE, если состояние несогласованно

Типы и значения

struct GtkToggleButton

struct GtkToggleButton;

Подробное описание свойств

Свойство “active”

  “active”                   gboolean

Если переключатель должен быть нажат.

Флаги: Чтение / Запись

Значение по умолчанию: FALSE

Свойство “draw-indicator”

  “draw-indicator”           gboolean

Если отображается переключательная часть кнопки.

Флаги: Чтение / Запись

Значение по умолчанию: FALSE

Свойство “inconsistent”

  “inconsistent”             gboolean

Если переключатель находится в состоянии "между" состояниями.

Флаги: Чтение / Запись

Значение по умолчанию: FALSE

Подробное описание сигналов

Сигнал “toggled”

void
user_function (GtkToggleButton *togglebutton,
               gpointer         user_data)

Должен быть подключён, если требуется выполнить действие всякий раз, когда состояние GtkToggleButton изменяется.

Параметры

togglebutton

объект, получивший сигнал.

user_data

пользовательские данные, установленные при подключении обработчика сигнала.

Флаги: Выполнить сначала

См. также

GtkButton, GtkCheckButton, GtkCheckMenuItem

© 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/GtkToggleButton.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API