Spec-Zone.ru › GTK 3.24

GtkImageMenuItem

GtkImageMenuItem — Устаревший виджет для пункта меню с иконкой

Функции

void gtk_image_menu_item_set_image ()
GtkWidget * gtk_image_menu_item_get_image ()
GtkWidget * gtk_image_menu_item_new ()
GtkWidget * gtk_image_menu_item_new_from_stock ()
GtkWidget * gtk_image_menu_item_new_with_label ()
GtkWidget * gtk_image_menu_item_new_with_mnemonic ()
gboolean gtk_image_menu_item_get_use_stock ()
void gtk_image_menu_item_set_use_stock ()
gboolean gtk_image_menu_item_get_always_show_image ()
void gtk_image_menu_item_set_always_show_image ()
void gtk_image_menu_item_set_accel_group ()

Свойства

GtkAccelGroup * accel-group Write
gboolean always-show-image Read / Write / Construct
GtkWidget * image Read / Write
gboolean use-stock Read / Write / Construct

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

struct GtkImageMenuItem
struct GtkImageMenuItemClass

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBin
                    ╰── GtkMenuItem
                        ╰── GtkImageMenuItem

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

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

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

#include <gtk/gtk.h>

Описание

GtkImageMenuItem — это пункт меню, который имеет иконку рядом с текстовой меткой.

Функционально эквивалентно:

Обратите внимание, что пользователь может отключить отображение значков меню с помощью параметра “gtk-menu-images”, поэтому убедитесь, что вы всё же заполнили текстовую метку. Если вы хотите убедиться, что элементы меню отображают иконку, настоятельно рекомендуется использовать GtkMenuItem с GtkImage вместо этого.

GtkImageMenuItem устарел начиная с GTK+ 3.10. Если вы хотите отобразить иконку в пункте меню, следует использовать GtkMenuItem и поместить GtkBox с GtkImage и GtkLabel внутрь. Также следует рассмотреть использование GtkBuilder и описания меню XML, следуя руководству GMenu. Иконки в пунктах меню следует использовать экономно, и только для элементов "объектов" (или "существительных"), таких как закладки, файлы и ссылки; "действия" (или "глаголы") не должны иметь иконок.

Кроме того, если вы хотите отобразить ускоритель клавиатуры, вы должны поместить метку ускорителя в ящик, используя gtk_box_pack_end() и выровнять метку, в противном случае ускоритель не отобразится правильно. Следующий фрагмент кода добавляет ускоритель клавиатуры в пункт меню с привязкой клавиш Ctrl+M:

GtkWidget *box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
GtkWidget *icon = gtk_image_new_from_icon_name ("folder-music-symbolic", GTK_ICON_SIZE_MENU);
GtkWidget *label = gtk_label_new ("Music");
GtkWidget *menu_item = gtk_menu_item_new ();

gtk_container_add (GTK_CONTAINER (box), icon);
gtk_container_add (GTK_CONTAINER (box), label);

gtk_container_add (GTK_CONTAINER (menu_item), box);

gtk_widget_show_all (menu_item);

Функции

gtk_image_menu_item_set_image ()

void
gtk_image_menu_item_set_image (GtkImageMenuItem *image_menu_item,
                               GtkWidget *image);

gtk_image_menu_item_set_image устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Устанавливает изображение для image_menu_item заданным виджетом. Обратите внимание, что отображение изображения зависит от параметра show-menu-images.

Параметры

image_menu_item

a GtkImageMenuItem.

image

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

[allow-none]

gtk_image_menu_item_get_image ()

GtkWidget *
gtk_image_menu_item_get_image (GtkImageMenuItem *image_menu_item);

gtk_image_menu_item_get_image устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Возвращает виджет, установленный в качестве изображения для image_menu_item . См. gtk_image_menu_item_set_image().

Параметры

image_menu_item

a GtkImageMenuItem

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

виджет, установленный в качестве изображения для image_menu_item .

[transfer none]

gtk_image_menu_item_new ()

GtkWidget *
gtk_image_menu_item_new (void);

gtk_image_menu_item_new устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Используйте gtk_menu_item_new() вместо этого.

Создаёт новый пункт меню GtkImageMenuItem с пустым текстом.

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

новый GtkImageMenuItem

gtk_image_menu_item_new_from_stock ()

GtkWidget *
gtk_image_menu_item_new_from_stock (const gchar *stock_id,
                                    GtkAccelGroup *accel_group);

gtk_image_menu_item_new_from_stock устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Используйте gtk_menu_item_new_with_mnemonic() вместо этого.

Создаёт новый GtkImageMenuItem, содержащий изображение и текст из стандартного элемента. Некоторые идентификаторы стандартных элементов имеют макросы препроцессора, такие как GTK_STOCK_OK и GTK_STOCK_APPLY.

Если вы хотите, чтобы у этого пункта меню были изменяемые ярлыки, передайте NULL в качестве accel_group. Затем вызовите gtk_menu_item_set_accel_path() с соответствующим путем для пункта меню, используйте gtk_stock_lookup() для поиска стандартного ярлыка для стандартного элемента, и если он найден, вызовите gtk_accel_map_add_entry() для его регистрации.

Параметры

stock_id

имя стандартного элемента.

accel_group

GtkAccelGroup для добавления ярлыка пункта меню или NULL.

[allow-none]

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

новый GtkImageMenuItem.

gtk_image_menu_item_new_with_label ()

GtkWidget *
gtk_image_menu_item_new_with_label (const gchar *label);

gtk_image_menu_item_new_with_label устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Используйте gtk_menu_item_new_with_label() вместо этого.

Создаёт новый GtkImageMenuItem с заданным текстом.

Параметры

label

текст пункта меню.

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

новый GtkImageMenuItem.

gtk_image_menu_item_new_with_mnemonic ()

GtkWidget *
gtk_image_menu_item_new_with_mnemonic (const gchar *label);

gtk_image_menu_item_new_with_mnemonic устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Используйте gtk_menu_item_new_with_mnemonic() вместо этого.

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

Параметры

label

текст пункта меню с подчёркнутым символом сочетания клавиш

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

новый GtkImageMenuItem

gtk_image_menu_item_get_use_stock ()

gboolean
gtk_image_menu_item_get_use_stock (GtkImageMenuItem *image_menu_item);

gtk_image_menu_item_get_use_stock устарело начиная с версии 3.10 и не должно использоваться в новом коде.

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

Параметры

image_menu_item

a GtkImageMenuItem

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

TRUE если текст, установленный в пункте меню, используется в качестве идентификатора стандартного элемента для выбора стандартного элемента для пункта меню.

С: 2.16

gtk_image_menu_item_set_use_stock ()

void
gtk_image_menu_item_set_use_stock (GtkImageMenuItem *image_menu_item,
                                   gboolean use_stock);

gtk_image_menu_item_set_use_stock устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Если TRUE, текст, установленный в пункте меню, используется в качестве идентификатора стандартного элемента для выбора стандартного элемента для пункта меню.

Параметры

image_menu_item

a GtkImageMenuItem

use_stock

TRUE если пункт меню должен использовать стандартный элемент

С: 2.16

gtk_image_menu_item_get_always_show_image ()

gboolean
gtk_image_menu_item_get_always_show_image
                               (GtkImageMenuItem *image_menu_item);

gtk_image_menu_item_get_always_show_image устарело начиная с версии 3.10 и не должно использоваться в новом коде.

Возвращает, будет ли пункт меню игнорировать параметр “gtk-menu-images” и всегда отображать изображение, если оно доступно.

Параметры

image_menu_item

a GtkImageMenuItem

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

TRUE если пункт меню всегда будет отображать изображение

С: 2.16

gtk_image_menu_item_set_always_show_image ()

void
gtk_image_menu_item_set_always_show_image
                               (GtkImageMenuItem *image_menu_item,
                                gboolean always_show);

gtk_image_menu_item_set_always_show_image устарело с версии 3.10 и не должно использоваться в новом коде.

Если TRUE, элемент меню будет игнорировать настройку “gtk-menu-images” и всегда отображать изображение, если оно доступно.

Используйте этот параметр, если элемент меню будет бесполезным или сложным в использовании без изображения.

Параметры

image_menu_item

a GtkImageMenuItem

always_show

TRUE если элемент меню должен всегда отображать изображение

С: 2.16

gtk_image_menu_item_set_accel_group ()

void
gtk_image_menu_item_set_accel_group (GtkImageMenuItem *image_menu_item,
                                     GtkAccelGroup *accel_group);

gtk_image_menu_item_set_accel_group устарело с версии 3.10 и не должно использоваться в новом коде.

Указывает accel_group для добавления ускорителя элемента меню (это относится только к стандартным элементам, поэтому стандартный элемент должен быть уже задан, убедитесь, что вы сначала вызвали gtk_image_menu_item_set_use_stock() и gtk_menu_item_set_label() со стандартным элементом).

Если вы хотите, чтобы у этого элемента меню были изменяемые ускорители, вам это не нужно (см. gtk_image_menu_item_new_from_stock()).

Параметры

image_menu_item

a GtkImageMenuItem

accel_group

the GtkAccelGroup

С: 2.16

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

struct GtkImageMenuItem

struct GtkImageMenuItem;

struct GtkImageMenuItemClass

struct GtkImageMenuItemClass {
  GtkMenuItemClass parent_class;
};

Члены

Подробности свойств

Свойство “accel-group”

  “accel-group”              GtkAccelGroup *

Группа ускорителей, используемая для стандартных клавиш ускорения

GtkImageMenuItem:accel-group устарело с версии 3.10 и не должно использоваться в новом коде.

Используйте gtk_widget_add_accelerator() вместо этого

Владелец: GtkImageMenuItem

Флаги: Запись

С: 2.16

Свойство “always-show-image”

  “always-show-image”        gboolean

Если TRUE, элемент меню будет всегда показывать изображение, если оно доступно.

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

GtkImageMenuItem:always-show-image устарело с версии 3.10 и не должно использоваться в новом коде.

Используйте GtkMenuItem содержащий GtkBox с GtkAccelLabel и GtkImage вместо этого

Владелец: GtkImageMenuItem

Флаги: Чтение/Запись/Конструктор

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

С: 2.16

Свойство “image”

  “image”                    GtkWidget *

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

GtkImageMenuItem:image устарело с версии 3.10 и не должно использоваться в новом коде.

Используйте GtkMenuItem содержащий GtkBox с GtkAccelLabel и GtkImage вместо этого

Владелец: GtkImageMenuItem

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

Свойство “use-stock”

  “use-stock”                gboolean

Если TRUE, метка, заданная в элементе меню, используется в качестве идентификатора стандартного элемента для выбора стандартного элемента для элемента.

GtkImageMenuItem:use-stock устарело с версии 3.10 и не должно использоваться в новом коде.

Используйте заданное имя из GtkIconTheme вместо этого

Владелец: GtkImageMenuItem

Флаги: Чтение/Запись/Конструктор

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

С: 2.16

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

Spec-Zone.ru

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