| 
 | |
|  | 
| GTK+ Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Properties | Signals | ||||
| GtkToggleButtonGtkToggleButton Кнопки с сохраняемым состоянием | 
 | 
#include <gtk/gtk.h>
            GtkToggleButton;
GtkWidget*  gtk_toggle_button_new           (void);
GtkWidget*  gtk_toggle_button_new_with_label
                                            (const gchar *label);
GtkWidget*  gtk_toggle_button_new_with_mnemonic
                                            (const gchar *label);
void        gtk_toggle_button_set_mode      (GtkToggleButton *toggle_button,
                                             gboolean draw_indicator);
gboolean    gtk_toggle_button_get_mode      (GtkToggleButton *toggle_button);
#define     gtk_toggle_button_set_state
void        gtk_toggle_button_toggled       (GtkToggleButton *toggle_button);
gboolean    gtk_toggle_button_get_active    (GtkToggleButton *toggle_button);
void        gtk_toggle_button_set_active    (GtkToggleButton *toggle_button,
                                             gboolean is_active);
gboolean    gtk_toggle_button_get_inconsistent
                                            (GtkToggleButton *toggle_button);
void        gtk_toggle_button_set_inconsistent
                                            (GtkToggleButton *toggle_button,
                                             gboolean setting);
  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBin
                                 +----GtkButton
                                       +----GtkToggleButton
                                             +----GtkCheckButtonGtkToggleButton осуществляет AtkImplementorIface.
"active" gboolean : Read / Write "draw-indicator" gboolean : Read / Write "inconsistent" gboolean : Read / Write
"toggled"   void        user_function      (GtkToggleButton *togglebutton,
                                            gpointer         user_data)         : Run firstGtkToggleButton - это GtkButton с запоминанием состояния при нажатии. Когда происходит нажатие, кнопка переключатель остаётся либо в нажатом, либо в отжатом состоянии.
Кнопка переключатель создаётся вызовом любой из двух функций - gtk_toggle_button_new() или gtk_toggle_button_new_with_label(). Если вы используете первую, уместно упаковать в кнопку переключатель виджет (такой как GtkLabel и/или GtkPixmap). (Смотрите GtkButton для большей информации).
Состояние GtkToggleButton может быть специально установлено используя gtk_toggle_button_set_active(), а определено используя gtk_toggle_button_get_active().
Для простого переключения состояний кнопки переключателя используется gtk_toggle_button_toggled.
Пример 2. Создание двух виджетов GtkToggleButton.
void make_toggles (void) { GtkWidget *dialog, *toggle1, *toggle2; dialog = gtk_dialog_new (); toggle1 = gtk_toggle_button_new_with_label ("Привет, я кнопка переключатель."); /* Делаем эту кнопку переключатель невидимой */ 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 (GTK_DIALOG (dialog)->action_area), toggle1, FALSE, FALSE, 2); toggle2 = gtk_toggle_button_new_with_label ("Hi, i'm another toggle button."); 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 (GTK_DIALOG (dialog)->action_area), toggle2, FALSE, FALSE, 2); gtk_widget_show_all (dialog); }
typedef struct _GtkToggleButton GtkToggleButton;
Структура GtkToggleButton содержит закрытые данные, которыми должны манипулировать функции приведённые ниже.
GtkWidget* gtk_toggle_button_new (void);
Создаёт новую кнопку переключатель. Виджет должен быть упакован в кнопку, как в gtk_button_new().
| Возвращает: | новая кнопка переключатель. | 
GtkWidget*  gtk_toggle_button_new_with_label
                                            (const gchar *label);Создаёт новую кнопку переключатель с текстовой меткой.
| label : | Строка содержащая сообщение помещаемое в кнопку переключатель. | 
| Возвращает: | новая кнопка переключатель. | 
GtkWidget*  gtk_toggle_button_new_with_mnemonic
                                            (const gchar *label);Создаёт новый GtkToggleButton содержащий ярлык. Ярлык создаётся используя gtk_label_new_with_mnemonic(), поэтому подчёркивание в label указывает на мнемоник для кнопки.
| label : | Текст кнопки, с подчеркиванием перед первым символом является мнемоническим символом | 
| Возвращает: | новый GtkToggleButton | 
void        gtk_toggle_button_set_mode      (GtkToggleButton *toggle_button,
                                             gboolean draw_indicator);Устанавливает отображается ли кнопка как отдельный индикатор и метка. Вы можете вызвать эту функцию на кнопке переключателе или радио-кнопке с draw_indicator = FALSE, для создания кнопки похожей на нормальную.
Эта функция имеет эффект только в случае класса GtkCheckButton или GtkRadioButton которые наследуют из GtkToggleButton, не в случае GtkToggleButton непосредственно.
| toggle_button : | |
| draw_indicator : | Если TRUE, рисует кнопку как разделённый индикатор и ярлык; если FALSE, рисует как нормальную кнопку | 
gboolean gtk_toggle_button_get_mode (GtkToggleButton *toggle_button);
Определяет отображается ли кнопка как отдельный индикатор и метка. Смотрите gtk_toggle_button_set_mode().
| toggle_button : | |
| Возвращает: | TRUE если кнопка переключатель рисуется как отдельный индикатор и ярлык. | 
#define gtk_toggle_button_set_state gtk_toggle_button_set_active
gtk_toggle_button_set_state устарел и не нужно его использовать во вновь создаваемом коде.
Это устаревший макрос и поддерживается только поп причине совместимости.
void gtk_toggle_button_toggled (GtkToggleButton *toggle_button);
Издаёт сигнал toggled на GtkToggleButton. Для приложений нет причин вызывать эту функцию.
| toggle_button : | 
gboolean gtk_toggle_button_get_active (GtkToggleButton *toggle_button);
Запрашивает GtkToggleButton и возвращает текущеме состояние. Возвращает TRUE если кнопка переключатель нажата и FALSE если отжата.
| toggle_button : | |
| Возвращает: | gboolean значение. | 
void        gtk_toggle_button_set_active    (GtkToggleButton *toggle_button,
                                             gboolean is_active);Устанавливает статус кнопки переключателя. Устанавливает TRUE если вы хотите нажатый GtkToggleButton, и FALSE отжатый. Это действие издаёт сигнал переключения.
| toggle_button : | |
| is_active : | TRUE или FALSE. | 
gboolean    gtk_toggle_button_get_inconsistent
                                            (GtkToggleButton *toggle_button);Получает значение установленное gtk_toggle_button_set_inconsistent().
| toggle_button : | |
| Возвращает: | TRUE если кнопка отображается в промежуточном состоянии, иначе FALSE | 
void        gtk_toggle_button_set_inconsistent
                                            (GtkToggleButton *toggle_button,
                                             gboolean setting);Если пользователь выбрал диапазон элементов (такие как некоторый текст или ячейки таблицы), которые оказывают эффект на кнопку переключатель, а текущеме значение в диапазоне является неопределённым, вам может понадобиться отобразить переключатель "в промежуточном" состоянии. Эта функция включает "промежуточное" отображение. Обычно неопределённое состояние выключается, когда пользователь переключает кнопку. Это делается вручную, gtk_toggle_button_set_inconsistent() затрагивает только внешний вид, и не затрагивает семантику кнопки.
| toggle_button : | |
| setting : | TRUE если состояние неопределённое | 
"active" gboolean : Read / Write
Если кнопка переключатель должна быть нажата или нет.
Значение по умолчанию: FALSE
"draw-indicator" gboolean : Read / Write
Если часть кнопки переключателя отображена.
Значение по умолчанию: FALSE
"inconsistent" gboolean : Read / Write
Если кнопка переключатель находится "в промежуточном" состоянии.
Значение по умолчанию: FALSE
void        user_function                  (GtkToggleButton *togglebutton,
                                            gpointer         user_data)         : Run firstДолжен быть подключен если вы выполняете действия изменяющие состояние GtkToggleButton's.
| togglebutton : | Объект получающий сигнал. | 
| user_data : | Пользовательские данные устанавливаемые при подключении обработчика. | 
| Больше об основных кнопках. | |
| Другой способ представить опцию переключения. | |
| GtkToggleButton как пункт меню. | 
| Закладки на сайте Проследить за страницей | Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |