如何使用Glade创建GtkApplicationWindow小部件?

Fli*_*imm 1 gtk glade

从我的代码访问GtkApplicationWindow对象对我很有用,但我想使用Glade来初始化它的属性.

如何在Glade中创建GtkApplicationWindow小部件?

小智 5

在你的ui xml改变

<object class="GtkWindow" id="foo">
Run Code Online (Sandbox Code Playgroud)

<object class="GtkApplicationWindow" id="foo">
Run Code Online (Sandbox Code Playgroud)

并在通过gtk builder检索窗口后设置应用程序属性:

GTK_WINDOW (gtk_builder_get_object (xml, "foo"));
g_object_set(main_window, "application", application, NULL);
Run Code Online (Sandbox Code Playgroud)

  • @Guido Günther:你怎么知道 GtkApplicationWindow 有一个“应用程序”属性?https://developer.gnome.org/gtk3/stable/GtkApplicationWindow.html 对此没有任何说明...... (2认同)
  • @MarcoScannadinari,我知道这有点晚了,但是如果您转到 GtkWindow Parent 类,您将看到它具有作为读/写的应用程序属性。所以你只需要扫描父类,你也会找到函数 gtk_window_get_application 和 gtk_window_set_application。诚然,ApplicationWindow 的描述区域应该对此有所说明。 (2认同)