2010-09-03 81 views
0

我仍然在这个链接上的例子:gtkmm statusicon quits after creation 我改变了功能,以这种方式打开traybar不同的窗口,但不显示任何东西。我尝试使用“Gtk :: Main :: run(w);”来运行每个窗口。它的工作原理,但我不想为每个窗口运行一个主循环。C++ gtk打开多个窗口

回答

1

您正在堆栈上创建窗口对象,因此在on_statusicon_popup()返回后立即被销毁。如果你希望窗口超过函数调用,你需要在堆上创建它并连接到它的'隐藏'信号(或类似的)并从那里删除对象。

+0

我不明白......如何在我的函数堆上创建它们? – Syco 2010-09-04 16:49:29

+0

'Gtk :: Window * w = new Gtk :: Window()'? – jonner 2010-09-06 16:48:54