GtkNotebook
GtkNotebook — Контейнер с вкладками
Функции
Свойства
| gboolean | enable-popup | Чтение / Запись |
| char * | group-name | Чтение / Запись |
| int | page | Чтение / Запись |
| GListModel * | pages | Чтение |
| gboolean | scrollable | Чтение / Запись |
| gboolean | show-border | Чтение / Запись |
| gboolean | show-tabs | Чтение / Запись |
| GtkPositionType | tab-pos | Чтение / Запись |
| GtkWidget * | child | Чтение / Запись / Только для создания |
| gboolean | detachable | Чтение / Запись |
| GtkWidget * | menu | Чтение / Запись / Только для создания |
| char * | menu-label | Чтение / Запись |
| int | position | Чтение / Запись |
| gboolean | reorderable | Чтение / Запись |
| GtkWidget * | tab | Чтение / Запись / Только для создания |
| gboolean | tab-expand | Чтение / Запись |
| gboolean | tab-fill | Чтение / Запись |
| char * | tab-label | Чтение / Запись |
Сигналы
| gboolean | change-current-page | Действие |
| GtkNotebook* | create-window | Выполнить последним |
| gboolean | focus-tab | Действие |
| void | move-focus-out | Действие |
| void | page-added | Выполнить последним |
| void | page-removed | Выполнить последним |
| void | page-reordered | Выполнить последним |
| gboolean | reorder-tab | Действие |
| gboolean | select-page | Действие |
| void | switch-page | Выполнить последним |
Действия
| menu.popup |
Типы и значения
| GtkNotebook | |
| GtkNotebookPage | |
| перечисление | GtkNotebookTab |
Иерархия объектов
GObject
├── GInitiallyUnowned
│ ╰── GtkWidget
│ ╰── GtkNotebook
╰── GtkNotebookPage
Реализованные интерфейсы
GtkNotebook реализует GtkAccessible, GtkBuildable и GtkConstraintTarget.
Файлы заголовков
#include <gtk/gtk.h>
Описание
Виджет GtkNotebook — это контейнер для компоновки, содержащий страницы, которые можно переключать с помощью ярлыков вкладок вдоль одного края.
Для GtkNotebook доступно множество настроек. В частности, вы можете выбрать, с какой стороны будут отображаться вкладки (см. gtk_notebook_set_tab_pos()), нужно ли делать виджет больше, если вкладок слишком много, или добавить стрелки прокрутки (см. gtk_notebook_set_scrollable()), и будет ли всплывающее меню, позволяющее пользователям переключать страницы. (см. gtk_notebook_popup_enable(), gtk_notebook_popup_disable())
GtkNotebook как GtkBuildable
Реализация GtkNotebook интерфейса GtkBuildable поддерживает размещение элементов на вкладках, задавая атрибут “type” элемента <child> как “tab”. Обратите внимание, что содержимое вкладки должно быть создано перед тем, как вкладка может быть заполнена. Элемент вкладки может быть указан без указания атрибута типа <child>.
Чтобы добавить элемент виджета в область действий блокнота, укажите "action-start" или “action-end” в качестве атрибута “type” элемента <child>.
Пример фрагмента определения пользовательского интерфейса с GtkNotebook:
CSS узлы
GtkNotebook имеет основной CSS узел с именем notebook, подразумевающий узел с именем header и под ним узел с именем tabs, содержащий по одному узлу на вкладку с именем tab.
Если присутствуют виджеты действий, их CSS узлы размещаются рядом с узлом tabs. Если блокнот имеет возможность прокрутки, CSS узлы с именем arrow помещаются в качестве первого и последнего ребенка узла tabs.
Главный узел получает класс стиля .frame когда блокнот имеет рамку (см. gtk_notebook_set_show_border()).
Узел заголовка получает один из классов стиля .top, .bottom, .left или .right, в зависимости от того, где размещены вкладки. Для переупорядочиваемых страниц узел вкладки получает класс .reorderable-page.
Узел tab получает класс стиля .dnd во время перемещения с помощью перетаскивания.
Узлы всегда упорядочиваются слева направо, независимо от направления текста.
Доступность
GtkNotebook использует следующие роли:
GTK_ACCESSIBLE_ROLE_GROUPдля виджета блокнотаGTK_ACCESSIBLE_ROLE_TAB_LISTдля списка вкладокGTK_ACCESSIBLE_ROLE_TABроль для каждой вкладкиGTK_ACCESSIBLE_ROLE_TAB_PANELдля каждой страницы
Функции
gtk_notebook_new ()
GtkWidget *
gtk_notebook_new (void); Создаёт новый виджет GtkNotebook без страниц.
Возвращает
новый созданный виджет GtkNotebook
gtk_notebook_get_page ()
GtkNotebookPage * gtk_notebook_get_page (GtkNotebook *notebook,GtkWidget *child);
Возвращает GtkNotebookPage для child.
Параметры
notebook | виджет GtkNotebook | |
child | дочерний элемент |
gtk_notebook_get_pages ()
GListModel *
gtk_notebook_get_pages (GtkNotebook *notebook); Возвращает GListModel, содержащий страницы виджета, что позволяет поддерживать актуальный вид.
Параметры
notebook | виджет GtkNotebook |
Возвращает
GListModel для дочерних элементов виджета.
[transfer full][attributes element-type=GtkNotebookPage]
gtk_notebook_page_get_child ()
GtkWidget *
gtk_notebook_page_get_child (GtkNotebookPage *page); Возвращает дочерний элемент виджета, которому принадлежит page.
Параметры
page |
Возвращает
дочерний элемент, которому принадлежит page.
[transfer none]
gtk_notebook_append_page ()
int gtk_notebook_append_page (GtkNotebook *notebook,GtkWidget *child,GtkWidget *tab_label);
Добавляет страницу к notebook.
Параметры
notebook | виджет GtkNotebook | |
child | GtkWidget для содержимого страницы | |
tab_label | GtkWidget в качестве метки страницы, или | [allow-none] |
Возвращает
индекс (начиная с 0) добавленной страницы в виджете, или -1 при ошибке
gtk_notebook_append_page_menu ()
int gtk_notebook_append_page_menu (GtkNotebook *notebook,GtkWidget *child,GtkWidget *tab_label,GtkWidget *menu_label);
Добавляет страницу к notebook, указывая виджет для использования в контекстном меню.
Параметры
notebook | виджет GtkNotebook | |
child | GtkWidget для содержимого страницы | |
tab_label | GtkWidget для метки страницы, или | [allow-none] |
menu_label | виджет в качестве метки для контекстного меню переключения страниц, если оно включено. Если | [allow-none] |
Возвращает
индекс (начиная с 0) добавленной страницы в виджете, или -1 при ошибке
gtk_notebook_prepend_page ()
int gtk_notebook_prepend_page (GtkNotebook *notebook,GtkWidget *child,GtkWidget *tab_label);
Вставляет страницу в начало notebook.
Параметры
notebook | виджет GtkNotebook | |
child | GtkWidget для содержимого страницы | |
tab_label | GtkWidget в качестве метки страницы, или | [allow-none] |
Возвращает
индекс (начиная с 0) вставленной страницы в виджет, или -1 при ошибке
gtk_notebook_prepend_page_menu ()
int gtk_notebook_prepend_page_menu (GtkNotebook *notebook,GtkWidget *child,GtkWidget *tab_label,GtkWidget *menu_label);
Вставляет страницу в начало notebook, указывая виджет для использования в контекстном меню.
Параметры
notebook | виджет GtkNotebook | |
child | GtkWidget для содержимого страницы | |
tab_label | GtkWidget для метки страницы, или | [allow-none] |
menu_label | виджет в качестве метки для контекстного меню переключения страниц, если оно включено. Если | [allow-none] |
Возвращает
индекс (начиная с 0) вставленной страницы в виджет, или -1 при ошибке
gtk_notebook_insert_page ()
int gtk_notebook_insert_page (GtkNotebook *notebook,GtkWidget *child,GtkWidget *tab_label,int position);
Вставить страницу в notebook в заданной позиции.
Параметры
notebook | ||
child | the GtkWidget для использования в качестве содержимого страницы | |
tab_label | the GtkWidget для использования в качестве метки страницы, или | [allow-none] |
position | индекс (начиная с 0), в который следует вставить страницу, или -1 для добавления страницы после всех других страниц |
Возвращаемое значение
индекс (начиная с 0) вставленной страницы в блокноте, или -1, если функция завершилась ошибкой
gtk_notebook_insert_page_menu ()
int gtk_notebook_insert_page_menu (GtkNotebook *notebook,GtkWidget *child,GtkWidget *tab_label,GtkWidget *menu_label,int position);
Вставляет страницу в notebook в заданной позиции, указывая виджет для использования в качестве метки в всплывающем меню.
Параметры
notebook | ||
child | the GtkWidget to use as the contents of the page | |
tab_label | the GtkWidget for use as the label for the page, or | [allow-none] |
menu_label | the widget to use as a label for the page-switch menu, if that is enabled. If | [allow-none] |
position | index (starting at 0) for inserting the page, or -1 to append the page after other pages. |
Возвращаемое значение
индекс (начиная с 0) вставленной страницы в блокноте.
gtk_notebook_remove_page ()
void gtk_notebook_remove_page (GtkNotebook *notebook,int page_num);
Удаляет страницу из блокнота по заданному индексу в блокноте.
Параметры
notebook | ||
page_num | индекс страницы блокнота, начиная с 0. Если -1, будет удалена последняя страница. |
gtk_notebook_detach_tab ()
void gtk_notebook_detach_tab (GtkNotebook *notebook,GtkWidget *child);
Удаляет дочерний элемент из блокнота.
Эта функция очень похожа на gtk_notebook_remove_page(), но дополнительно сообщает блокноту, что удаление происходит в рамках операции перетаскивания вкладки, которая не должна отменяться.
Параметры
notebook | ||
child | дочерний элемент |
gtk_notebook_page_num ()
int gtk_notebook_page_num (GtkNotebook *notebook,GtkWidget *child);
Определяет индекс страницы, содержащей данный виджет дочернего элемента.
Параметры
notebook | ||
child |
Возвращаемое значение
индекс страницы, содержащей child, или -1, если child не находится в блокноте.
gtk_notebook_next_page ()
void
gtk_notebook_next_page (GtkNotebook *notebook); Переключается на следующую страницу. Ничего не происходит, если текущая страница — последняя.
Параметры
notebook |
gtk_notebook_prev_page ()
void
gtk_notebook_prev_page (GtkNotebook *notebook); Переключается на предыдущую страницу. Ничего не происходит, если текущая страница — первая.
Параметры
notebook |
gtk_notebook_reorder_child ()
void gtk_notebook_reorder_child (GtkNotebook *notebook,GtkWidget *child,int position);
Изменяет порядок страницы, содержащей child, так, чтобы она отображалась в позиции position. Если position больше или равно количеству дочерних элементов в списке или отрицательно, child будет перемещена в конец списка.
Параметры
notebook | ||
child | перемещаемый дочерний элемент | |
position | новая позиция, или -1 для перемещения в конец |
gtk_notebook_set_tab_pos ()
void gtk_notebook_set_tab_pos (GtkNotebook *notebook,GtkPositionType pos);
Устанавливает край, на котором отображаются вкладки для переключения страниц в блокноте.
Параметры
notebook | a GtkNotebook. | |
pos | край для отображения вкладок |
gtk_notebook_set_show_tabs ()
void gtk_notebook_set_show_tabs (GtkNotebook *notebook,gboolean show_tabs);
Устанавливает, показывать ли вкладки в блокноте.
Параметры
notebook | ||
show_tabs |
|
gtk_notebook_set_show_border ()
void gtk_notebook_set_show_border (GtkNotebook *notebook,gboolean show_border);
Устанавливает, будет ли отрисовываться скос вокруг страниц записной книжки. Это оказывает визуальный эффект только в том случае, если вкладки не отображаются. Смотрите gtk_notebook_set_show_tabs().
Параметры
notebook | ||
show_border |
|
gtk_notebook_set_scrollable ()
void gtk_notebook_set_scrollable (GtkNotebook *notebook,gboolean scrollable);
Устанавливает, будет ли область меток вкладок иметь стрелки прокрутки, если слишком много вкладок, чтобы поместиться в области.
Параметры
notebook | ||
scrollable |
|
gtk_notebook_popup_enable ()
void
gtk_notebook_popup_enable (GtkNotebook *notebook); Включает всплывающее меню: если пользователь щелкает правой кнопкой мыши по меткам вкладок, появится меню со всеми страницами.
Параметры
notebook |
gtk_notebook_popup_disable ()
void
gtk_notebook_popup_disable (GtkNotebook *notebook); Отключает всплывающее меню.
Параметры
notebook |
gtk_notebook_get_current_page ()
int
gtk_notebook_get_current_page (GtkNotebook *notebook); Возвращает номер страницы текущей страницы.
Параметры
notebook |
Возвращает
индекс (начиная с 0) текущей страницы в записной книжке. Если записная книжка не содержит страниц, будет возвращено -1.
gtk_notebook_get_menu_label ()
GtkWidget * gtk_notebook_get_menu_label (GtkNotebook *notebook,GtkWidget *child);
Извлекает виджет метки меню страницы, содержащей child .
Параметры
notebook | ||
child | виджет, содержащийся на странице |
Возвращает
метка меню, или NULL если страница записной книжки не имеет метки меню, отличной от метки по умолчанию (метка вкладки).
[nullable][transfer none]
gtk_notebook_get_nth_page ()
GtkWidget * gtk_notebook_get_nth_page (GtkNotebook *notebook,int page_num);
Возвращает дочерний виджет, содержащийся на странице номер page_num .
Параметры
notebook | ||
page_num | индекс страницы в записной книжке или -1 для получения последней страницы |
Возвращает
дочерний виджет, или NULL если page_num находится за границами.
[nullable][transfer none]
gtk_notebook_get_n_pages ()
int
gtk_notebook_get_n_pages (GtkNotebook *notebook); Получает количество страниц в записной книжке.
Параметры
notebook |
Возвращает
количество страниц в записной книжке
gtk_notebook_get_tab_label ()
GtkWidget * gtk_notebook_get_tab_label (GtkNotebook *notebook,GtkWidget *child);
Возвращает виджет метки вкладки для страницы child . NULL возвращается, если child не находится в notebook или если для child не была специально установлена метка вкладки.
Параметры
notebook | ||
child | страница |
Возвращает
метка вкладки.
[transfer none][nullable]
gtk_notebook_set_menu_label ()
void gtk_notebook_set_menu_label (GtkNotebook *notebook,GtkWidget *child,GtkWidget *menu_label);
Изменяет метку меню для страницы, содержащей child .
Параметры
notebook | ||
child | дочерний виджет | |
menu_label | метка меню или | [allow-none] |
gtk_notebook_set_menu_label_text ()
void gtk_notebook_set_menu_label_text (GtkNotebook *notebook,GtkWidget *child,const char *menu_text);
Создает новую метку и устанавливает ее в качестве метки меню child .
Параметры
notebook | ||
child | дочерний виджет | |
menu_text | текст метки |
gtk_notebook_set_tab_label ()
void gtk_notebook_set_tab_label (GtkNotebook *notebook,GtkWidget *child,GtkWidget *tab_label);
Изменяет метку вкладки для child . Если NULL указано для tab_label , то страница будет иметь метку «страница N».
Параметры
notebook | ||
child | страница | |
tab_label | виджет метки вкладки, который нужно использовать, или | [allow-none] |
gtk_notebook_set_tab_label_text ()
void gtk_notebook_set_tab_label_text (GtkNotebook *notebook,GtkWidget *child,const char *tab_text);
Создаёт новую метку и устанавливает её как метку вкладки для страницы, содержащей child.
Параметры
notebook | ||
child | страница | |
tab_text | текст метки |
gtk_notebook_set_tab_reorderable ()
void gtk_notebook_set_tab_reorderable (GtkNotebook *notebook,GtkWidget *child,gboolean reorderable);
Устанавливает, можно ли переупорядочить вкладку с помощью перетаскивания.
Параметры
notebook | ||
child | дочерний элемент GtkWidget | |
reorderable | можно ли переупорядочить вкладку |
gtk_notebook_set_tab_detachable ()
void gtk_notebook_set_tab_detachable (GtkNotebook *notebook,GtkWidget *child,gboolean detachable);
Устанавливает, можно ли отсоединить вкладку от notebook и переместить её в другую закладку или виджет.
Обратите внимание, что 2 закладки должны принадлежать к одной группе (см. gtk_notebook_set_group_name()), чтобы разрешить автоматический обмен вкладками между ними.
Если вы хотите, чтобы виджет взаимодействовал с закладкой через перетаскивание (например, принимать перетаскиваемые вкладки из него), он должен быть установлен в качестве приемника и принимать целевой тип «GTK_NOTEBOOK_TAB». Закладка заполнит выборку значением GtkWidget**, указывающим на дочерний виджет, соответствующий перетаскиваемой вкладке.
Обратите внимание, что для удаления вкладки из исходной закладки в процессе приема перетаскивания следует использовать gtk_notebook_detach_tab() вместо gtk_notebook_remove_page(). В противном случае исходная закладка посчитает, что перетаскиваемая вкладка была удалена во время операции перетаскивания, и начнёт анимацию отмены перетаскивания.
<object class="GtkNotebook">
<child>
<object class="GtkLabel" id="notebook-content">
<property name="label">Content</property>
</object>
</child>
<child type="tab">
<object class="GtkLabel" id="notebook-tab">
<property name="label">Tab</property>
</object>
</child>
</object>Если вы хотите, чтобы закладка принимала перетаскивания из других виджетов, вам придётся реализовать свою собственную логику перетаскивания.
Параметры
notebook | ||
child | дочерний элемент GtkWidget | |
detachable | можно ли отсоединить вкладку |
gtk_notebook_get_menu_label_text ()
const char * gtk_notebook_get_menu_label_text (GtkNotebook *notebook,GtkWidget *child);
Возвращает текст метки меню для страницы, содержащей child.
Параметры
notebook | ||
child | дочерний виджет страницы закладки. |
Возвращает
текст метки вкладки, или NULL если у виджета нет метки меню, отличной от стандартной, или виджет метки меню не является GtkLabel. Строка принадлежит виджету и не должна освобождаться.
[nullable]
gtk_notebook_get_scrollable ()
gboolean
gtk_notebook_get_scrollable (GtkNotebook *notebook); Возвращает, отображаются ли стрелки прокрутки для области меток вкладок. См. gtk_notebook_set_scrollable().
Параметры
notebook |
Возвращает
TRUE если стрелки прокрутки присутствуют
gtk_notebook_get_show_border ()
gboolean
gtk_notebook_get_show_border (GtkNotebook *notebook); Возвращает, отображается ли граница вокруг страниц закладок. См. gtk_notebook_set_show_border().
Параметры
notebook |
Возвращает
TRUE если граница отображается
gtk_notebook_get_show_tabs ()
gboolean
gtk_notebook_get_show_tabs (GtkNotebook *notebook); Возвращает, отображаются ли вкладки закладки. См. gtk_notebook_set_show_tabs().
Параметры
notebook |
Возвращает
TRUE если вкладки отображаются
gtk_notebook_get_tab_label_text ()
const char * gtk_notebook_get_tab_label_text (GtkNotebook *notebook,GtkWidget *child);
Возвращает текст метки вкладки для страницы, содержащей child.
Параметры
notebook | ||
child | виджет, содержащийся на странице |
Возвращает
текст метки вкладки, или NULL если виджет метки вкладки не является GtkLabel. Строка принадлежит виджету и не должна освобождаться.
[nullable]
gtk_notebook_get_tab_pos ()
GtkPositionType
gtk_notebook_get_tab_pos (GtkNotebook *notebook); Возвращает край, на котором нарисованы вкладки для переключения страниц в закладке.
Параметры
notebook |
Возвращает
край, на котором нарисованы вкладки
gtk_notebook_get_tab_reorderable ()
gboolean gtk_notebook_get_tab_reorderable (GtkNotebook *notebook,GtkWidget *child);
Возвращает, можно ли переупорядочить вкладку с помощью перетаскивания.
Параметры
notebook | ||
child | дочерний элемент GtkWidget |
Возвращает
TRUE если вкладку можно переупорядочить.
gtk_notebook_get_tab_detachable ()
gboolean gtk_notebook_get_tab_detachable (GtkNotebook *notebook,GtkWidget *child);
Возвращает, можно ли отсоединить содержимое вкладки от notebook.
Параметры
notebook | ||
child | дочерний элемент GtkWidget |
Возвращает
TRUE если вкладку можно отсоединить.
gtk_notebook_set_current_page ()
void gtk_notebook_set_current_page (GtkNotebook *notebook,int page_num);
Переключает на страницу с номером page_num .
Обратите внимание, что по историческим причинам GtkNotebook отказывается переключаться на страницу, пока дочерний виджет не будет видим. Поэтому рекомендуется отобразить дочерние виджеты перед добавлением их в записную книжку.
Параметры
notebook | ||
page_num | индекс страницы для переключения, начиная с 0. Если отрицательно, используется последняя страница. Если больше, чем количество страниц в записной книжке, ничего не будет сделано. |
gtk_notebook_set_group_name ()
void gtk_notebook_set_group_name (GtkNotebook *notebook,const char *group_name);
Устанавливает имя группы для notebook .
Записные книжки с одинаковыми именами смогут обмениваться вкладками через перетаскивание. Записная книжка с именем группы NULL не сможет обмениваться вкладками ни с какой другой записной книжкой.
Параметры
notebook | ||
group_name | имя группы записной книжки, или | [allow-none] |
gtk_notebook_get_group_name ()
const char *
gtk_notebook_get_group_name (GtkNotebook *notebook); Возвращает текущее имя группы для notebook .
Параметры
notebook |
Возвращает
имя группы, или NULL если оно не установлено.
[nullable][transfer none]
gtk_notebook_set_action_widget ()
void gtk_notebook_set_action_widget (GtkNotebook *notebook,GtkWidget *widget,GtkPackType pack_type);
Устанавливает widget в качестве одного из виджетов действий. В зависимости от типа размещения виджет будет помещен перед или после вкладок. Вы можете использовать GtkBox, если вам нужно разместить более одного виджета на одной стороне.
Параметры
notebook | ||
widget | ||
pack_type | тип размещения виджета действий |
gtk_notebook_get_action_widget ()
GtkWidget * gtk_notebook_get_action_widget (GtkNotebook *notebook,GtkPackType pack_type);
Получает один из виджетов действий. См. gtk_notebook_set_action_widget().
Параметры
notebook | ||
pack_type | тип размещения виджета действий для получения |
Возвращает
Виджет действий с заданным pack_type или NULL, когда этот виджет действий не был установлен.
[nullable][transfer none]
Типы и значения
GtkNotebook
typedef struct _GtkNotebook GtkNotebook;
GtkNotebookPage
typedef struct _GtkNotebookPage GtkNotebookPage;
Страница в GtkNotebook.
Структура GtkNotebookPage содержит только приватные данные.
перечисление GtkNotebookTab
Параметр, используемый в сигналах действий GtkNotebook.
Члены
GTK_NOTEBOOK_TAB_FIRST | первая вкладка в записной книжке | |
GTK_NOTEBOOK_TAB_LAST | последняя вкладка в записной книжке |
Подробное описание свойств
Свойство “enable-popup”
“enable-popup” gboolean
Если ИСТИНА, нажатие правой кнопки мыши на вкладке открывает меню, которое можно использовать для перехода на страницу.
Владелец: GtkNotebook
Флаги: Чтение / Запись
Значение по умолчанию: ЛОЖЬ
Свойство “group-name”
“group-name” char *
Имя группы для перетаскивания вкладок.
Владелец: GtkNotebook
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “page”
“page” int
Индекс текущей страницы.
Владелец: GtkNotebook
Флаги: Чтение / Запись
Допустимые значения: >= -1
Значение по умолчанию: -1
Свойство “pages”
“pages” GListModel *
Страницы записной книжки.
Владелец: GtkNotebook
Флаги: Чтение
Свойство “scrollable”
“scrollable” gboolean
Если ИСТИНА, добавляются стрелки прокрутки, если вкладок слишком много для отображения.
Владелец: GtkNotebook
Флаги: Чтение / Запись
Значение по умолчанию: ЛОЖЬ
Свойство “show-border”
“show-border” gboolean
Показывать ли границу.
Владелец: GtkNotebook
Флаги: Чтение / Запись
Значение по умолчанию: ИСТИНА
Свойство “show-tabs”
“show-tabs” gboolean
Показывать ли вкладки.
Владелец: GtkNotebook
Флаги: Чтение / Запись
Значение по умолчанию: ИСТИНА
Свойство “tab-pos”
“tab-pos” GtkPositionType
На какой стороне записной книжки расположены вкладки.
Владелец: GtkNotebook
Флаги: Чтение / Запись
Значение по умолчанию: GTK_POS_TOP
Свойство “child”
“child” GtkWidget *
Дочерний элемент для этой страницы.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись / Только для создания
Свойство “detachable”
“detachable” gboolean
Можно ли отсоединять вкладку.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись
Значение по умолчанию: ЛОЖЬ
Свойство “menu”
“menu” GtkWidget *
Элемент виджета метки, отображаемый в пункте меню дочернего элемента.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись / Только для создания
Свойство “menu-label”
“menu-label” char *
Текст виджета меню.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Свойство “position”
“position” int
Индекс дочернего элемента в родительском элементе.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись
Допустимые значения: >= -1
Значение по умолчанию: 0
Свойство “reorderable”
“reorderable” gboolean
Можно ли пользователю переупорядочить вкладку.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись
Значение по умолчанию: ЛОЖЬ
Свойство “tab”
“tab” GtkWidget *
Виджет вкладки для этой страницы.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись / Только для создания
Свойство “tab-expand”
“tab-expand” gboolean
Развернуть вкладку дочернего элемента.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись
Значение по умолчанию: ЛОЖЬ
Свойство “tab-fill”
“tab-fill” gboolean
Заполнить ли вкладку дочернего элемента выделенной областью.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись
Значение по умолчанию: ИСТИНА
Свойство “tab-label”
“tab-label” char *
Текст виджета вкладки.
Владелец: GtkNotebookPage
Флаги: Чтение / Запись
Значение по умолчанию: NULL
Подробности сигналов
Сигнал “change-current-page”
gboolean user_function (GtkNotebook *notebook, int arg1, gpointer user_data)
Флаги: Действие
Сигнал “create-window”
GtkNotebook* user_function (GtkNotebook *notebook, GtkWidget *page, gpointer user_data)
Сигнал ::create-window генерируется, когда открепленная вкладка перетаскивается на главное окно.
Обработчик этого сигнала может создать окно, содержащее блокнот, к которому будет прикреплена вкладка. Он также отвечает за перемещение/изменение размера окна и добавление необходимых свойств к блокноту (например, “имя_группы”).
Параметры
notebook | блокнот GtkNotebook, генерирующий сигнал | |
page | вкладка | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Возвращаемое значение
блокнот GtkNotebook, к которому page должен быть добавлен, или NULL.
[transfer none]
Флаги: Выполнение последним
Сигнал “focus-tab”
gboolean user_function (GtkNotebook *notebook, GtkNotebookTab arg1, gpointer user_data)
Флаги: Действие
Сигнал “move-focus-out”
void user_function (GtkNotebook *notebook, GtkDirectionType arg1, gpointer user_data)
Флаги: Действие
Сигнал “page-added”
void user_function (GtkNotebook *notebook, GtkWidget *child, guint page_num, gpointer user_data)
Сигнал ::page-added генерируется в блокноте сразу после добавления страницы в блокнот.
Параметры
notebook | блокнот GtkNotebook | |
child | элемент GtkWidget, затронутый | |
page_num | новый номер страницы для | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнение последним
Сигнал “page-removed”
void user_function (GtkNotebook *notebook, GtkWidget *child, guint page_num, gpointer user_data)
Сигнал ::page-removed генерируется в блокноте сразу после удаления страницы из блокнота.
Параметры
notebook | блокнот GtkNotebook | |
child | элемент GtkWidget, затронутый | |
page_num | номер удаляемой страницы | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнение последним
Сигнал “page-reordered”
void user_function (GtkNotebook *notebook, GtkWidget *child, guint page_num, gpointer user_data)
Сигнал ::page-reordered генерируется в блокноте сразу после изменения порядка страниц.
Параметры
notebook | блокнот GtkNotebook | |
child | элемент GtkWidget, затронутый | |
page_num | новый номер страницы для | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнение последним
Сигнал “reorder-tab”
gboolean user_function (GtkNotebook *notebook, GtkDirectionType arg1, gboolean arg2, gpointer user_data)
Флаги: Действие
Сигнал “select-page”
gboolean user_function (GtkNotebook *notebook, gboolean arg1, gpointer user_data)
Флаги: Действие
Сигнал “switch-page”
void user_function (GtkNotebook *notebook, GtkWidget *page, guint page_num, gpointer user_data)
Генерируется, когда пользователь или функция изменяет текущую страницу.
Параметры
notebook | объект, получивший сигнал. | |
page | новая текущая страница | |
page_num | индекс страницы | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнение последним
Подробности действий
Действие “menu.popup”
Открывает контекстное меню.
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer-old.gnome.org/gtk4/4.0/GtkNotebook.html