| 
 
 краткое описание#include <gtk/gtk.h>
            gtkmessagedialog;
enum        gtkmessagetype;
enum        gtkbuttonstype;
gtkwidget*  gtk_message_dialog_new          (gtkwindow *parent,
                                             gtkdialogflags flags,
                                             gtkmessagetype type,
                                             gtkbuttonstype buttons,
                                             const gchar *message_format,
                                             ...);
gtkwidget*  gtk_message_dialog_new_with_markup
                                            (gtkwindow *parent,
                                             gtkdialogflags flags,
                                             gtkmessagetype type,
                                             gtkbuttonstype buttons,
                                             const gchar *message_format,
                                             ...);
void        gtk_message_dialog_set_markup   (gtkmessagedialog *message_dialog,
                                             const gchar *str);
void        gtk_message_dialog_set_image    (gtkmessagedialog *dialog,
                                             gtkwidget *image);
void        gtk_message_dialog_format_secondary_text
                                            (gtkmessagedialog *message_dialog,
                                             const gchar *message_format,
                                             ...);
void        gtk_message_dialog_format_secondary_markup
                                            (gtkmessagedialog *message_dialog,
                                             const gchar *message_format,
                                             ...);иерархия объектовgobject +----ginitiallyunowned +----gtkobject +----gtkwidget +----gtkcontainer +----gtkbin +----gtkwindow +----gtkdialog +----gtkmessagedialog осуществляемые интерфейсыgtkmessagedialog осуществляет atkimplementoriface. свойства"buttons" gtkbuttonstype : write / construct only "image" gtkwidget : read / write "message-type" gtkmessagetype : read / write / construct "secondary-text" gchararray : read / write "secondary-use-markup" gboolean : read / write "text" gchararray : read / write "use-markup" gboolean : read / write свойства стиля"message-border" gint : read "use-separator" gboolean : read описаниеgtkmessagedialog представляет диалог с изображением типа сообщения (error, question, etc.) расположенным рядом с некоторым текстом. это просто удобный виджет; вы можете сконструировать эквивалент gtkmessagedialog из gtkdialog без больших усилий, но gtkmessagedialog сохраняет тип. легчайший путь выполнить модальный диалог сообщения это использование gtk_dialog_run(), хотя вы можете поместить флаг gtk_dialog_modal, gtk_dialog_run() автоматически создаёт диалог модальным и ожидает ответа от пользователя. gtk_dialog_run() возвращает когда нажата какая нибудь кнопка диалога. пример 2. модальный диалог.  dialog = gtk_message_dialog_new (main_application_window,
                                  gtk_dialog_destroy_with_parent,
                                  gtk_message_error,
                                  gtk_buttons_close,
                                  "error loading file '%s': %s",
                                  filename, g_strerror (errno));
 gtk_dialog_run (gtk_dialog (dialog));
 gtk_widget_destroy (dialog);вы можете сделать не модальный диалог gtkmessagedialog как показано в следующем примере: пример 3. не модальный диалог.  dialog = gtk_message_dialog_new (main_application_window,
                                  gtk_dialog_destroy_with_parent,
                                  gtk_message_error,
                                  gtk_buttons_close,
                                  "error loading file '%s': %s",
                                  filename, g_strerror (errno));
 /* закрывает диалог когда пользователь отреагировал на него (например нажал кнопку) */
 g_signal_connect_swapped (dialog, "response",
                           g_callback (gtk_widget_destroy),
                           dialog);деталиgtkmessagedialogtypedef struct _gtkmessagedialog gtkmessagedialog; перечисление gtkmessagetypetypedef enum { gtk_message_info, gtk_message_warning, gtk_message_question, gtk_message_error } gtkmessagetype; тип сообщения которое будет отображено в диалоге. 
 перечисление gtkbuttonstypetypedef enum { gtk_buttons_none, gtk_buttons_ok, gtk_buttons_close, gtk_buttons_cancel, gtk_buttons_yes_no, gtk_buttons_ok_cancel } gtkbuttonstype; предварительно подготовленные кнопки для диалога. если нет соответствующей альтернативы, просто используется gtk_buttons_none затем вызывается gtk_dialog_add_buttons(). 
 gtk_message_dialog_new ()gtkwidget* gtk_message_dialog_new (gtkwindow *parent, gtkdialogflags flags, gtkmessagetype type, gtkbuttonstype buttons, const gchar *message_format, ...); создаёт новый диалог сообщения, который является простым диалогом со значком, указывающим тип сообщения (error, warning, etc.) и некоторым текстом который может видеть пользователь. когда пользователь нажимает кнопку издаётся сигнал "response" с ответным ids из 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, ...); создаёт новый диалог сообщение, который является простым диалогом со значком, указывающим тип сообщения (error, warning, etc.) и некоторым текстом который маркирован с pango text markup language. когда пользователь нажимает кнопку издаётся сигнал "response" с ответным ids из gtkresponsetype. смотрите gtkdialog для подробностей. специальные символы xml помещаемые как аргументы в printf() будут автоматически сброшены по необходимости. (смотрите g_markup_printf_escaped() чтобы понять как это осуществляется.) обычно это всё что вам нужно, но если вы хотите в качестве метки использовать существующую строку маркированную pango, то вам нужно использовать gtk_message_dialog_set_markup(), так как вы не сможете поместить любую маркированную строку как формат (может содержать символы '%') или как строковый аргумент.  gtkwidget *dialog;
 dialog = gtk_message_dialog_new (main_application_window,
                                  gtk_dialog_destroy_with_parent,
                                  gtk_message_error,
                                  gtk_buttons_close,
                                  null);
 gtk_message_dialog_set_markup (gtk_message_dialog (dialog),
                                markup);
 начиная с версии 2.4 gtk_message_dialog_set_markup ()void gtk_message_dialog_set_markup (gtkmessagedialog *message_dialog, const gchar *str); устанавливает текст диалога сообщения как str, который маркирован pango text markup language. 
 начиная с версии 2.4 gtk_message_dialog_set_image ()void gtk_message_dialog_set_image (gtkmessagedialog *dialog, gtkwidget *image); 
устанавливает значок диалога как  
 начиная с версии 2.10 gtk_message_dialog_format_secondary_text ()void        gtk_message_dialog_format_secondary_text
                                            (gtkmessagedialog *message_dialog,
                                             const gchar *message_format,
                                             ...);устанавливает вторичный текст диалога сообщения как message_format (с printf()- стилем). помните эта установка вторичного текста делает первичный текст полужирным, если вы не обеспечили явную разметку. 
 начиная с версии 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 text markup language. помните эта установка вторичного текста делает первичный текст полужирным, если вы не обеспечили явную разметку. из-за оплошности, эта функция не сбрасывает специальные символы xml как это делает gtk_message_dialog_new_with_markup(). поэтому, если параметры содержат специальные символы xml, вы должны использовать g_markup_printf_escaped() для их сброса. gchar *msg; msg = g_markup_printf_escaped (message_format, ...); gtk_message_dialog_format_secondary_markup (message_dialog, "%s", msg); g_free (msg); 
 начиная с версии 2.6 свойства деталейсвойство "buttons""buttons" gtkbuttonstype : write / construct only the buttons shown in the message dialog. значение по умолчанию: gtk_buttons_none свойство " | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||