如何在GObject / Gtk中获取某个类的类对象?例如,如果我的类是GtkSpinButton,我想获得代表该类的GtkSpinButtonClass实例。它是
中的参数“class”gtk_spin_button_class_init (GtkSpinButtonClass *class)
它是存储虚函数的对象。当我有一个GtkSpinButton的实例时,我可以调用
GtkSpinButtonClass *class = GTK_SPIN_BUTTON_GET_CLASS (instance)
但是我没有实例。 GTK_TYPE_SPIN_BUTTON
给我类型id,数字,而不是类对象。知道如何获得实际的实例吗?
答案 0 :(得分:6)
您想使用g_type_class_ref
GtkSpinButtonClass *klass = g_type_class_ref(GTK_TYPE_SPIN_BUTTON);
当你完成它时
g_type_class_unref(klass);