我一直在尝试获取 GtkBuilder 对象中所有 GtkWidget 的“名称”。
我已经设法通过 gtk_builder_get_objects()
从构建器对象中获取所有对象,并将它们存储在 GSList 中。
但是,当我在 gobjects(我转换到 GtkWidgets)上使用 gtk_widget_get_name()
时,我得到通用名称,例如“GtkWindow”和“GtkButton”,而不是“window1”或“button1” "显示在空地中。
我们将非常感谢任何帮助,并会让这个程序员非常高兴。
最佳答案
我也在做同样的事情。我能够使用 .glade
文件获取 id=
字符串
gtk_buildable_get_name()
指定 here .
注意:在 2.20 之前,GtkBuilder 将构造的小部件的“name”属性设置为“id”属性。在 GTK+ 2.20 或更新版本中,您必须使用 gtk_buildable_get_name()
而不是 gtk_widget_get_name()
来获取“id”,或者在您的 UI 定义中设置“name”属性.
关于c - GtkBuilder 和 "names",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8263756/