GtkSwitch
GtkSwitch — Переключатель в стиле «выключатель света»
Функции
| GtkWidget * | gtk_switch_new () |
| void | gtk_switch_set_active () |
| gboolean | gtk_switch_get_active () |
| void | gtk_switch_set_state () |
| gboolean | gtk_switch_get_state () |
Стилизованные свойства
| int | высота-ползунка | Чтение |
| int | ширина-ползунка | Чтение |
Сигналы
| void | активация | Действие |
| gboolean | установка-состояния | Выполнить последним |
Типы и значения
| struct | GtkSwitch |
| struct | GtkSwitchClass |
Иерархия объектов
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkSwitch
Реализованные интерфейсы
GtkSwitch реализует AtkImplementorIface, GtkBuildable, GtkActionable и GtkActivatable.
Файлы заголовков
#include <gtk/gtk.h>
Описание
GtkSwitch — это виджет, имеющий два состояния: включено или выключено. Пользователь может управлять активным состоянием, щелкнув пустую область или перетащив ползунок.
GtkSwitch также может обрабатывать ситуации, когда состояние базового объекта изменяется с задержкой. Подробности см. в разделе сигнала «установка-состояния».
Узлы CSS
switch ╰── slider
GtkSwitch имеет два узла CSS: основной узел с именем switch и подразумеваемый узел с именем slider. Ни один из них не использует стилизованные классы.
Функции
gtk_switch_new ()
GtkWidget *
gtk_switch_new (void); Создает новый виджет GtkSwitch.
Возвращает
новый созданный экземпляр GtkSwitch
С версии: 3.0
gtk_switch_set_active ()
void gtk_switch_set_active (GtkSwitch *sw,gboolean is_active);
Изменяет состояние sw на желаемое.
Параметры
sw | виджет GtkSwitch | |
is_active |
|
С версии: 3.0
gtk_switch_get_active ()
gboolean
gtk_switch_get_active (GtkSwitch *sw); Определяет, находится ли GtkSwitch в состоянии «включено» или «выключено».
Параметры
sw | виджет GtkSwitch |
Возвращает
TRUE , если GtkSwitch активен, и FALSE в противном случае
С версии: 3.0
gtk_switch_set_state ()
void gtk_switch_set_state (GtkSwitch *sw,gboolean state);
Устанавливает базовое состояние GtkSwitch.
Обычно это то же самое, что и «active», если только переключатель не настроен на отложенные изменения состояния. Эта функция обычно вызывается из обработчика сигнала «установка-состояния».
См. «установка-состояния» для получения дополнительных сведений.
Параметры
sw | виджет GtkSwitch | |
state | новое состояние |
С версии: 3.14
Типы и значения
struct GtkSwitch
struct GtkSwitch;
Структура GtkSwitch содержит закрытые данные, к которым следует обращаться только с помощью предоставленного API.
struct GtkSwitchClass
struct GtkSwitchClass {
GtkWidgetClass parent_class;
void (* activate) (GtkSwitch *sw);
gboolean (* state_set) (GtkSwitch *sw, gboolean state);
};
Члены
| Сигнал действия. Его вызов приводит к анимации переключателя. | |
| Обработчик класса для сигнала ::state-set. |
Подробное описание свойств
Свойство “active”
“active” gboolean
Определяет, находится ли виджет GtkSwitch в включенном или выключенном состоянии.
Владелец: GtkSwitch
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “state”
“state” gboolean
Состояние ядра, управляемое переключателем. Подробнее см. сигнал «state-set».
Владелец: GtkSwitch
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 3.14
Подробное описание свойств стиля
Свойство стиля “slider-height”
“slider-height” int
Минимальная высота ручки виджета GtkSwitch в пикселях.
GtkSwitch:slider-height устарело с версии 3.20 и не должно использоваться в новых кодах.
Используйте свойство CSS min-height вместо него.
Владелец: GtkSwitch
Флаги: Чтение
Допустимые значения: >= 22
Значение по умолчанию: 22
С версии: 3.18
Свойство стиля “slider-width”
“slider-width” int
Минимальная ширина ручки виджета GtkSwitch в пикселях.
GtkSwitch:slider-width устарело с версии 3.20 и не должно использоваться в новых кодах.
Используйте свойство CSS min-width вместо него.
Владелец: GtkSwitch
Флаги: Чтение
Допустимые значения: >= 36
Значение по умолчанию: 36
Подробное описание сигналов
Сигнал “activate”
void user_function (GtkSwitch *widget, gpointer user_data)
Сигнал ::activate виджета GtkSwitch — это сигнал действия, его излучение вызывает анимацию переключателя. Приложениям не следует подключаться к этому сигналу, но необходимо использовать сигнал notify::active.
Параметры
widget | объект, получивший сигнал. | |
user_data | пользовательские данные, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “state-set”
gboolean user_function (GtkSwitch *widget, gboolean state, gpointer user_data)
Сигнал ::state-set виджета GtkSwitch излучается для изменения базового состояния. Он излучается при изменении пользователем положения переключателя. Обработчик по умолчанию поддерживает синхронизацию состояния с свойством «active».
Для реализации задержки изменения состояния приложения могут подключиться к этому сигналу, инициировать изменение базового состояния, и вызвать gtk_switch_set_state(), когда изменение базового состояния будет завершено. Обработчик сигнала должен вернуть TRUE чтобы предотвратить выполнение обработчика по умолчанию.
Визуально, базовое состояние представлено цветом канавки переключателя, в то время как свойство «active» представлено положением переключателя.
Параметры
widget | объект, на котором был излучен сигнал | |
state | новое состояние переключателя | |
user_data | пользовательские данные, заданные при подключении обработчика сигнала. |
Возвращаемое значение
TRUE для остановки излучения сигнала
Флаги: Последний вызов
С версии: 3.14
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkSwitch.html