1
我在退出gtk應用程序時遇到問題。 g_application_quit結果在隨後的誤差函數調用:C - GTK - g_application_quit
GLib-GIO-CRITICAL **: g_application_quit: assertion 'G_IS_APPLICATION (application)' failed
的代碼片段看起來是這樣的:
g_signal_connect(app_window, "destroy", G_CALLBACK(g_application_quit), app);
我想這也是,但仍然拋出了同樣的錯誤:
g_signal_connect(app_window, "destroy", G_CALLBACK(g_application_quit), G_APPLICATION(app));
該應用程序初始化爲:
GtkApplication *app = gtk_application_new("my.ne.sweeper", G_APPLICATION_FLAGS_NONE);
任何幫助表示讚賞。謝謝。
的事情是,我需要的g_application_quit不僅對窗戶破壞,而且通過菜單選項退出應用程序。有沒有辦法用g_application_quit來做到這一點,或者我該如何正確關閉應用程序? ty – Morpheus
@Morpheus:從菜單動作處理程序中調用'g_application_quit'完全有效,你不需要將它連接到窗口的'destroy'信號。請參閱'gtk +'教程中的[示例](https://git.gnome.org/browse/gtk+/tree/examples/application4/exampleapp.c)。 –