GTK小部件对话框没有关闭

GTK widget dialog does not close

本文关键字:对话框 小部 GTK      更新时间:2023-10-16

我尝试用gtk制作简单的"消息框"对话框。它的作品,但对话框不关闭,当我点击按钮。(我只在对话框中使用gtk。我的主窗口-不是gtkWindow,而是X11 Glx window)。下面是我的代码:

    gtk_init(&argc, &argv);
    GtkWidget *dialog = gtk_message_dialog_new (NULL,
                                     GTK_DIALOG_DESTROY_WITH_PARENT,
                                     GTK_MESSAGE_ERROR,
                                     GTK_BUTTONS_CLOSE,
                                     "Some text",
                                     g_strerror (errno));
    gtk_dialog_run(GTK_DIALOG (dialog));
    gtk_widget_destroy(dialog);

如果我点击"关闭"按钮-程序继续运行,小部件对话框失去焦点但不关闭隐藏。为什么?似乎gtk_widget_destroy(dialog)没有调用。

注。我用Linux 64, eclipse, c++

尝试将消息框设置为模态对话框。

GtkWidget *dialog = gtk_message_dialog_new (NULL,
                                     GTK_DIALOG_MODAL,
                                     GTK_MESSAGE_ERROR,
                                     GTK_BUTTONS_CLOSE,
                                     "Some text",
                                     g_strerror (errno));