Spec-Zone.ru › GTK 4.0

GtkImage

GtkImage — Виджет для отображения изображения

Функции

GtkWidget * gtk_image_new ()
GtkWidget * gtk_image_new_from_file ()
GtkWidget * gtk_image_new_from_resource ()
GtkWidget * gtk_image_new_from_pixbuf ()
GtkWidget * gtk_image_new_from_paintable ()
GtkWidget * gtk_image_new_from_icon_name ()
GtkWidget * gtk_image_new_from_gicon ()
void gtk_image_clear ()
void gtk_image_set_from_file ()
void gtk_image_set_from_resource ()
void gtk_image_set_from_pixbuf ()
void gtk_image_set_from_paintable ()
void gtk_image_set_from_icon_name ()
void gtk_image_set_from_gicon ()
GtkImageType gtk_image_get_storage_type ()
GdkPaintable * gtk_image_get_paintable ()
const char * gtk_image_get_icon_name ()
GIcon * gtk_image_get_gicon ()
void gtk_image_set_pixel_size ()
int gtk_image_get_pixel_size ()
void gtk_image_set_icon_size ()
GtkIconSize gtk_image_get_icon_size ()

Свойства

char * file Чтение/Запись
GIcon * gicon Чтение/Запись
char * имя_иконки Чтение/Запись
GtkIconSize размер_иконки Чтение/Запись
GdkPaintable * paintable Чтение/Запись
int размер_пикселей Чтение/Запись
char * ресурс Чтение/Запись
GtkImageType тип_хранения Чтение
gboolean использовать_fallback Чтение/Запись

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

GtkImage
перечисление GtkImageType

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkImage

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

GtkImage реализует GtkAccessible, GtkBuildable и GtkConstraintTarget.

Включаемые файлы

#include <gtk/gtk.h>

Описание

Виджет GtkImage отображает изображение. Различные объекты могут быть отображены как изображение; чаще всего вы загружаете GdkTexture из файла, а затем отображаете его. Для этого есть удобная функция gtk_image_new_from_file(), которая используется следующим образом:

GtkWidget *image;
image = gtk_image_new_from_file ("myfile.png");

Если файл не загружен успешно, изображение будет содержать значок «разбитое изображение», аналогичный тому, который используется во многих веб-браузерах. Если вы хотите самостоятельно обрабатывать ошибки при загрузке файла, например, отображая сообщение об ошибке, то загрузите изображение с помощью gdk_texture_new_from_file(), а затем создайте GtkImage с помощью gtk_image_new_from_paintable().

Иногда приложение хочет избежать зависимости от внешних файлов данных, таких как файлы изображений. Подробности см. в документации GResource. В этом случае следует использовать «ресурс», gtk_image_new_from_resource() и gtk_image_set_from_resource().

GtkImage отображает свое изображение в виде значка с размером, определяемым приложением. См. GtkPicture, если вы хотите отобразить изображение в его фактическом размере.

CSS узлы

GtkImage имеет один CSS узел с именем image. В зависимости от свойства «размер_иконки» могут появиться стили классов .normal-icons или .large-icons.

Удобство использования

GtkImage использует роль GTK_ACCESSIBLE_ROLE_IMG.

Функции

gtk_image_new ()

GtkWidget *
gtk_image_new (void);

Создаёт новый пустой виджет GtkImage.

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

новый созданный виджет GtkImage.

gtk_image_new_from_file ()

GtkWidget *
gtk_image_new_from_file (const char *filename);

Создаёт новый виджет GtkImage, отображающий файл filename. Если файл не найден или не может быть загружен, результат — виджет GtkImage с иконкой «разбитого изображения». Данная функция всегда возвращает валидный виджет GtkImage.

Если вам нужно обнаружить ошибки загрузки файла, используйте gdk_texture_new_from_file() для самостоятельной загрузки файла, а затем создайте виджет GtkImage на основе загруженной текстуры.

Тип хранения (gtk_image_get_storage_type()) возвращаемого изображения не определён, он будет зависеть от подходящего типа для отображения файла.

Параметры

filename

имя файла.

[type filename]

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

новый виджет GtkImage

gtk_image_new_from_resource ()

GtkWidget *
gtk_image_new_from_resource (const char *resource_path);

Создаёт новый виджет GtkImage, отображающий ресурсный файл resource_path. Если файл не найден или не может быть загружен, результат — виджет GtkImage с иконкой «разбитого изображения». Данная функция всегда возвращает валидный виджет GtkImage.

Если вам нужно обнаружить ошибки загрузки файла, используйте gdk_pixbuf_new_from_file() для самостоятельной загрузки файла, а затем создайте виджет GtkImage на основе загруженного pixbuf.

Тип хранения (gtk_image_get_storage_type()) возвращаемого изображения не определён, он будет зависеть от подходящего типа для отображения файла.

Параметры

resource_path

путь к ресурсу

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

новый виджет GtkImage

gtk_image_new_from_pixbuf ()

GtkWidget *
gtk_image_new_from_pixbuf (GdkPixbuf *pixbuf);

Создаёт новый виджет GtkImage, отображающий pixbuf. GtkImage не принимает ссылку на pixbuf; вам всё ещё нужно его освободить, если вы владеете ссылкой. GtkImage добавит свою собственную ссылку вместо принятия вашей.

Это вспомогательная функция для gtk_image_new_from_paintable(), и вы не сможете получить исходный pixbuf после вызова этой функции, только текстуру.

Обратите внимание, что эта функция просто создаёт виджет GtkImage на основе pixbuf. Созданный виджет GtkImage не будет реагировать на изменения состояния. Если вам это нужно, используйте gtk_image_new_from_icon_name().

Параметры

pixbuf

a GdkPixbuf, или NULL.

[allow-none]

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

новый виджет GtkImage

gtk_image_new_from_paintable ()

GtkWidget *
gtk_image_new_from_paintable (GdkPaintable *paintable);

Создаёт новый виджет GtkImage, отображающий paintable. GtkImage не принимает ссылку на paintable; вам всё ещё нужно его освободить, если вы владеете ссылкой. GtkImage добавит свою собственную ссылку вместо принятия вашей.

Виджет GtkImage отслеживает изменения в paintable и обновляет свой размер и содержимое в ответ на них.

Параметры

paintable

a GdkPaintable, или NULL.

[allow-none]

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

новый виджет GtkImage

gtk_image_new_from_icon_name ()

GtkWidget *
gtk_image_new_from_icon_name (const char *icon_name);

Создаёт виджет GtkImage с иконкой из текущей темы иконок. Если имя иконки неизвестно, отображается иконка «разбитого изображения». При смене текущей темы иконок, иконка обновляется соответствующим образом.

Примечание: До версии 3.94 эта функция принимала дополнительный аргумент размера иконки. Обратитесь к gtk_image_set_icon_size() для альтернативного способа установки размера иконки.

Параметры

icon_name

имя иконки или NULL.

[nullable]

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

новый виджет GtkImage, отображающий тематическую иконку

gtk_image_new_from_gicon ()

GtkWidget *
gtk_image_new_from_gicon (GIcon *icon);

Создаёт виджет GtkImage с иконкой из текущей темы иконок. Если имя иконки неизвестно, отображается иконка «разбитого изображения». При смене текущей темы иконок, иконка обновляется соответствующим образом.

Примечание: До версии 3.94 эта функция принимала дополнительный аргумент размера иконки. Обратитесь к gtk_image_set_icon_size() для альтернативного способа установки размера иконки.

Параметры

icon

иконка

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

новый виджет GtkImage, отображающий тематическую иконку

gtk_image_clear ()

void
gtk_image_clear (GtkImage *image);

Сбрасывает изображение в пустое состояние.

Параметры

image

a GtkImage

gtk_image_set_from_file ()

void
gtk_image_set_from_file (GtkImage *image,
                         const char *filename);

См. gtk_image_new_from_file() для подробностей.

Параметры

image

a GtkImage

filename

имя файла или NULL.

[type filename][allow-none]

gtk_image_set_from_resource ()

void
gtk_image_set_from_resource (GtkImage *image,
                             const char *resource_path);

См. gtk_image_new_from_resource() для подробностей.

Параметры

image

a GtkImage

resource_path

путь к ресурсу или NULL.

[allow-none]

gtk_image_set_from_pixbuf ()

void
gtk_image_set_from_pixbuf (GtkImage *image,
                           GdkPixbuf *pixbuf);

См. gtk_image_new_from_pixbuf() для подробностей.

Примечание: Это вспомогательная функция для gtk_image_set_from_paintable(), и вы не сможете получить точный pixbuf после вызова, только paintable.

Параметры

image

a GtkImage

pixbuf

a GdkPixbuf или NULL.

[allow-none]

gtk_image_set_from_paintable ()

void
gtk_image_set_from_paintable (GtkImage *image,
                              GdkPaintable *paintable);

См. gtk_image_new_from_paintable() для подробностей.

Параметры

image

a GtkImage

paintable

a GdkPaintable или NULL.

[nullable]

gtk_image_set_from_icon_name ()

void
gtk_image_set_from_icon_name (GtkImage *image,
                              const char *icon_name);

См. gtk_image_new_from_icon_name() для подробностей.

Примечание: До версии 3.94 эта функция принимала дополнительный аргумент размера иконки. См. gtk_image_set_icon_size() для другого способа задания размера иконки.

Параметры

image

a GtkImage

icon_name

имя иконки или NULL.

[nullable]

gtk_image_set_from_gicon ()

void
gtk_image_set_from_gicon (GtkImage *image,
                          GIcon *icon);

См. gtk_image_new_from_gicon() для подробностей.

Примечание: До версии 3.94 эта функция принимала дополнительный аргумент размера иконки. См. gtk_image_set_icon_size() для другого способа задания размера иконки.

Параметры

image

a GtkImage

icon

иконка

gtk_image_get_storage_type ()

GtkImageType
gtk_image_get_storage_type (GtkImage *image);

Получает тип представления, используемый GtkImage для хранения данных изображения. Если в GtkImage нет данных изображения, возвращаемое значение будет GTK_IMAGE_EMPTY.

Параметры

image

a GtkImage

Возвращает

используемое представление изображения

gtk_image_get_paintable ()

GdkPaintable *
gtk_image_get_paintable (GtkImage *image);

Получает изображение GdkPaintable, отображаемое в GtkImage. Тип хранения изображения должен быть GTK_IMAGE_EMPTY или GTK_IMAGE_PAINTABLE (см. gtk_image_get_storage_type()). Вызывающий эту функцию не владеет ссылкой на возвращаемое paintable.

Параметры

image

a GtkImage

Возвращает

отображаемое paintable или NULL, если изображение пустое.

[nullable][transfer none]

gtk_image_get_icon_name ()

const char *
gtk_image_get_icon_name (GtkImage *image);

Получает имя и размер иконки, отображаемой в GtkImage. Тип хранения изображения должен быть GTK_IMAGE_EMPTY или GTK_IMAGE_ICON_NAME (см. gtk_image_get_storage_type()). Возвращаемая строка принадлежит GtkImage и не должна освобождаться.

Примечание: Эта функция была изменена в 3.94, чтобы не использовать больше параметров-выходов, а возвращать имя иконки напрямую. См. gtk_image_get_icon_size() для получения размера иконки.

Параметры

image

a GtkImage

Возвращает

имя иконки или NULL.

[transfer none][allow-none]

gtk_image_get_gicon ()

GIcon *
gtk_image_get_gicon (GtkImage *image);

Получает GIcon и размер, отображаемые в GtkImage. Тип хранения изображения должен быть GTK_IMAGE_EMPTY или GTK_IMAGE_GICON (см. gtk_image_get_storage_type()). Вызывающий функцию не владеет ссылкой на возвращаемую GIcon.

Примечание: Эта функция была изменена в 3.94, чтобы не использовать больше параметров-выходов, а возвращать GIcon напрямую. См. gtk_image_get_icon_size() для получения размера иконки.

Параметры

image

a GtkImage

Возвращает

a GIcon, или NULL.

[transfer none][allow-none]

gtk_image_set_pixel_size ()

void
gtk_image_set_pixel_size (GtkImage *image,
                          int pixel_size);

Устанавливает размер пикселей для использования с именованными иконками. Если размер пикселей установлен на значение != -1, он используется вместо размера иконки, установленного с помощью gtk_image_set_from_icon_name().

Параметры

image

a GtkImage

pixel_size

новый размер пикселей

gtk_image_get_pixel_size ()

int
gtk_image_get_pixel_size (GtkImage *image);

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

Параметры

image

a GtkImage

Возвращает

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

gtk_image_set_icon_size ()

void
gtk_image_set_icon_size (GtkImage *image,
                         GtkIconSize icon_size);

Предлагает размер значка теме для именованных значков.

Параметры

image

a GtkImage

icon_size

новый размер значка

gtk_image_get_icon_size ()

GtkIconSize
gtk_image_get_icon_size (GtkImage *image);

Получает размер значка, используемый image при отрисовке значков.

Параметры

image

a GtkImage

Возвращает

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

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

GtkImage

typedef struct _GtkImage GtkImage;

перечисление GtkImageType

Описание представления данных изображения, используемого GtkImage. Если вы хотите получить изображение из виджета, вы можете получить только текущее хранящееся представление. Например, если gtk_image_get_storage_type() возвращает GTK_IMAGE_PAINTABLE, то вы можете вызвать gtk_image_get_paintable(). Для пустых изображений вы можете запросить любой тип хранения (вызвать любую из функций «получить»), но все они вернут значения NULL.

Элементы

GTK_IMAGE_EMPTY

изображение не отображается виджетом

GTK_IMAGE_ICON_NAME

виджет содержит именованный значок

GTK_IMAGE_GICON

виджет содержит GIcon

GTK_IMAGE_PAINTABLE

виджет содержит GdkPaintable

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

Свойство “file”

  “file”                     char *

Имя файла для загрузки и отображения.

Владелец: GtkImage

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

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

Свойство “gicon”

  “gicon”                    GIcon *

GIcon, отображаемый в GtkImage. Для значков темы, если тема значков изменится, изображение обновится автоматически.

Владелец: GtkImage

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

Свойство “icon-name”

  “icon-name”                char *

Имя значка в теме значков. Если тема значков изменится, изображение обновится автоматически.

Владелец: GtkImage

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

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

Свойство “icon-size”

  “icon-size”                GtkIconSize

Символьный размер для использования набора значков или именованного значка.

Владелец: GtkImage

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

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

Свойство “paintable”

  “paintable”                GdkPaintable *

GdkPaintable для отображения.

Владелец: GtkImage

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

Свойство “pixel-size”

  “pixel-size”               int

Свойство «pixel-size» может использоваться для указания фиксированного размера, переопределяющего свойство “icon-size” для изображений типа GTK_IMAGE_ICON_NAME.

Владелец: GtkImage

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

Допустимые значения: >= -1

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

Свойство “resource”

  “resource”                 char *

Путь к файлу ресурса для отображения.

Владелец: GtkImage

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

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

Свойство “storage-type”

  “storage-type”             GtkImageType

Представление, используемое для данных изображения.

Владелец: GtkImage

Флаги: Чтение

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

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

  “use-fallback”             gboolean

Использовать ли обратный поиск стандартных имен значков для отображаемого значка в GtkImage. Значение этого свойства имеет значение только для изображений типа GTK_IMAGE_ICON_NAME и GTK_IMAGE_GICON.

Владелец: GtkImage

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

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

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

Spec-Zone.ru

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