GtkMessageDialog
GtkMessageDialog — Удобное окно с сообщением
Функции
Свойства
| GtkButtonsType | buttons | Запись / Только для создания |
| GtkWidget * | image | Чтение / Запись |
| GtkWidget * | область-сообщения | Чтение |
| GtkMessageType | тип-сообщения | Чтение / Запись / Только для создания |
| gchar * | вторичный-текст | Чтение / Запись |
| gboolean | вторичный-формат-разметки | Чтение / Запись |
| gchar * | текст | Чтение / Запись |
| gboolean | использовать-разметку | Чтение / Запись |
Стилизованные свойства
| gint | граница-сообщения | Чтение |
Типы и значения
| struct | GtkMessageDialog |
| enum | GtkMessageType |
| enum | GtkButtonsType |
Иерархия объектов
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBin ╰── GtkWindow ╰── GtkDialog ╰── GtkMessageDialog
Реализованные интерфейсы
GtkMessageDialog реализует AtkImplementorIface и GtkBuildable.
Включаемые файлы
#include <gtk/gtk.h>
Описание
GtkMessageDialog представляет диалоговое окно с текстом сообщения. Это просто удобный виджет; вы можете создать эквивалент GtkMessageDialog из GtkDialog без особых усилий, но GtkMessageDialog экономит время набора.
Одно отличие от GtkDialog заключается в том, что GtkMessageDialog устанавливает свойство “skip-taskbar-hint” в TRUE, чтобы диалоговое окно по умолчанию не отображалось в панели задач.
Самый простой способ создать модальное диалоговое окно с сообщением — использовать gtk_dialog_run(), хотя вы также можете передать флаг GTK_DIALOG_MODAL, gtk_dialog_run() автоматически делает диалоговое окно модальным и ожидает, пока пользователь не отреагирует на него. gtk_dialog_run() возвращает значение, когда нажимается любая кнопка диалогового окна.
Пример использования модального диалогового окна:
Вы можете создать немодальное диалоговое окно GtkMessageDialog следующим образом:
Пример немодального диалогового окна:
GtkMessageDialog как GtkBuildable
Реализация GtkMessageDialog интерфейса GtkBuildable выводит область сообщения как внутренний дочерний элемент с именем «message_area».
Функции
gtk_message_dialog_new ()
GtkWidget * gtk_message_dialog_new (GtkWindow *parent,GtkDialogFlags flags,GtkMessageType type,GtkButtonsType buttons,const gchar *message_format,...);
Создаёт новый диалог с сообщением, представляющий собой простой диалог с текстом, который пользователь может увидеть. При нажатии пользователем кнопки генерируется сигнал «response» с идентификаторами ответов из GtkResponseType. Более подробную информацию см. в GtkDialog.
Параметры
gtk_message_dialog_new_with_markup ()
GtkWidget * gtk_message_dialog_new_with_markup (GtkWindow *parent,GtkDialogFlags flags,GtkMessageType type,GtkButtonsType buttons,const gchar *message_format,...);
Создаёт новый диалог с сообщением, представляющий собой простой диалог с текстом, отформатированным с помощью языка разметки Pango. При нажатии пользователем кнопки генерируется сигнал «response» с идентификаторами ответов из GtkResponseType. Более подробную информацию см. в GtkDialog.
Специальные XML-символы в аргументах printf(), передаваемых в эту функцию, автоматически будут экранированы по мере необходимости. (См. g_markup_printf_escaped() для способа реализации.) Обычно это то, что вам нужно, но если у вас уже есть строка разметки Pango, которую вы хотите использовать буквально как метку, то вам нужно использовать gtk_message_dialog_set_markup(), так как вы не можете передать строку разметки ни как формат (она может содержать символы «%»), ни как аргумент строки.
Параметры
Возвращаемое значение
новый GtkMessageDialog
C: 2.4
gtk_message_dialog_set_markup ()
void gtk_message_dialog_set_markup (GtkMessageDialog *message_dialog,const gchar *str);
Устанавливает текст диалога с сообщением на str, отформатированный с помощью языка разметки Pango.
Параметры
message_dialog | ||
str | строка разметки (см. формат разметки Pango) |
C: 2.4
gtk_message_dialog_set_image ()
void gtk_message_dialog_set_image (GtkMessageDialog *dialog,GtkWidget *image);
gtk_message_dialog_set_image устарело с версии 3.12 и не должно использоваться в новых кодах.
Используйте GtkDialog для создания диалогов с изображениями
Устанавливает изображение диалога на image.
Параметры
dialog | ||
image | изображение |
C: 2.10
gtk_message_dialog_get_image ()
GtkWidget *
gtk_message_dialog_get_image (GtkMessageDialog *dialog); gtk_message_dialog_get_image устарело с версии 3.12 и не должно использоваться в новых кодах.
Используйте GtkDialog для диалогов с изображениями
Получает изображение диалога.
Параметры
dialog |
Возвращаемое значение
изображение диалога.
[transfer none]
C: 2.14
gtk_message_dialog_format-secondary-text ()
void gtk_message_dialog_format_secondary_text (GtkMessageDialog *message_dialog,const gchar *message_format,...);
Устанавливает дополнительный текст диалога с сообщением на message_format (в стиле printf()).
Параметры
message_dialog | ||
message_format | строка форматирования в стиле | [allow-none] |
... | аргументы для |
C: 2.6
gtk_message_dialog_format_secondary_markup ()
void gtk_message_dialog_format_secondary_markup (GtkMessageDialog *message_dialog,const gchar *message_format,...);
Устанавливает вторичный текст диалогового окна сообщения в значение message_format (в формате printf()), форматированный с помощью языка разметки текста Pango.
Из-за упущения в функции не экранируются специальные XML-символы, как это делает gtk_message_dialog_new_with_markup(). Поэтому, если аргументы могут содержать специальные XML-символы, необходимо использовать g_markup_printf_escaped() для их экранирования.
GtkDialogFlags flags = GTK_DIALOG_DESTROY_WITH_PARENT; dialog =gtk_message_dialog_new(parent_window, flags, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, "Error reading “%s”: %s", filename, g_strerror(errno)); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog);
Параметры
message_dialog | диалоговое окно GtkMessageDialog | |
message_format | строка разметки в формате printf (см. формат разметки Pango) или | |
... | аргументы для |
С версии: 2.6
gtk_message_dialog_get_message_area ()
GtkWidget *
gtk_message_dialog_get_message_area (GtkMessageDialog *message_dialog); Возвращает область сообщения диалогового окна. Это область, где упакованы основной и вторичный ярлыки диалогового окна. Вы можете добавить собственное дополнительное содержимое в эту область, и оно будет отображаться ниже этих ярлыков. См. gtk_dialog_get_content_area() для соответствующей функции в родительском диалоговом окне GtkDialog.
Параметры
message_dialog | диалоговое окно GtkMessageDialog |
Возвращаемое значение
Объект GtkVBox, соответствующий «области сообщения» в message_dialog .
[передача none]
С версии: 2.22
Типы и значения
struct GtkMessageDialog
struct GtkMessageDialog;
перечисление GtkMessageType
Тип сообщения, отображаемого в диалоговом окне.
Элементы
GTK_MESSAGE_INFO | Сообщение для информирования | |
GTK_MESSAGE_WARNING | Сообщение предупреждения (не критическое) | |
GTK_MESSAGE_QUESTION | Вопрос, требующий выбора | |
GTK_MESSAGE_ERROR | Сообщение об ошибке (критическом) | |
GTK_MESSAGE_OTHER | Ничего из вышеперечисленного |
перечисление GtkButtonsType
Набор кнопок по умолчанию для диалогового окна. Если ни один из этих вариантов не подходит, просто используйте GTK_BUTTONS_NONE, а затем вызовите gtk_dialog_add_buttons().
Обратите внимание, что
GTK_BUTTONS_OK,GTK_BUTTONS_YES_NOиGTK_BUTTONS_OK_CANCELне рекомендуются Руководством по разработке интерфейсов пользователя GNOME.
Элементы
GTK_BUTTONS_NONE | без кнопок | |
GTK_BUTTONS_OK | кнопка ОК | |
GTK_BUTTONS_CLOSE | кнопка Закрыть | |
GTK_BUTTONS_CANCEL | кнопка Отмена | |
GTK_BUTTONS_YES_NO | кнопки Да и Нет | |
GTK_BUTTONS_OK_CANCEL | кнопки ОК и Отмена |
Подробное описание свойств
Свойство “buttons”
“buttons” GtkButtonsType
Кнопки, отображаемые в диалоговом окне сообщения.
Флаги: Запись / Только для построения
Значение по умолчанию: GTK_BUTTONS_NONE
Свойство “image”
“image” GtkWidget *
Изображение для этого диалогового окна.
GtkMessageDialog:image устарело с версии 3.12 и не должно использоваться в новом коде.
Используйте GtkDialog для создания диалоговых окон с изображениями
Флаги: Чтение / Запись
С версии: 2.10
Свойство “message-area”
“message-area” GtkWidget *
Объект GtkBox, соответствующий области сообщения в этом диалоговом окне. Подробное описание этой области см. в gtk_message_dialog_get_message_area().
Флаги: Чтение
С версии: 2.22
Свойство “message-type”
“message-type” GtkMessageType
Тип сообщения.
Флаги: Чтение / Запись / Создание
Значение по умолчанию: GTK_MESSAGE_INFO
Свойство “secondary-text”
“secondary-text” gchar *
Вторичный текст диалогового окна сообщения.
Флаги: Чтение / Запись
Значение по умолчанию: NULL
С версии: 2.10
Свойство “secondary-use-markup”
“secondary-use-markup” gboolean
TRUE, если вторичный текст диалогового окна содержит разметку Pango. См. pango_parse_markup().
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 2.10
Свойство “text”
“text” gchar *
Основной текст диалогового окна сообщения. Если у диалогового окна есть вторичный текст, этот текст будет отображаться как заголовок.
Флаги: Чтение / Запись
Значение по умолчанию: ""
С версии: 2.10
Свойство “use-markup”
“use-markup” gboolean
TRUE, если основной текст диалогового окна содержит разметку Pango. См. pango_parse_markup().
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 2.10
Подробное описание свойств стиля
Свойство стиля “message-border”
“message-border” gint
Ширина рамки вокруг метки в диалоговом окне сообщения.
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 12
См. также
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.20/GtkMessageDialog.html