我正在使用gtkmm 3.0.1,创建
以下是我的代码:
Gtk::MessageDialog
时没有看到一个选项来在用户单击按钮后销毁对话框。我发现唯一的方法是在一个次要函数中调用它来销毁消息对话框,但我感觉这是可以避免的可能性。文档没有提及任何销毁它的方法,只提到由用户来负责销毁。以下是我的代码:
#include <gtkmm.h>
#include <iostream>
using namespace std;
int main(int argc, char *argv[]) {
Gtk::Main kit(argc, argv);
Gtk::Window client;
Gtk::MessageDialog dialog("Info", false, Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_YES_NO);
dialog.set_secondary_text( "Dialog");
dialog.set_default_response(Gtk::RESPONSE_YES);
dialog.run();
cout << "dialog is still open, needs to be destroyed at this point." << endl;
Gtk::Main::run(client);
return EXIT_SUCCESS;
}
Gtk::Main::run(client);
是倒数第二个命令。 - cellsheet