我正在尝试在gtkmm中实现自定义树模式(这样做的原因是使用某些分页来显示数据库中的行)。我已经实现了所有的vfunc方法,但我仍然会遇到以下错误:
glibmm-CRITICAL **: Glib::Interface::Interface(const Glib::Interface_Class&): assertion `gobject_ != 0' failed
GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed
在实例化时,我有以下代码:
ModelTracks::ModelTracks(Library* library_ptr)
: Glib::ObjectBase(typeid(ModelTracks)),
Gtk::TreeModel(),
_library_ptr(library_ptr) {
_sort_direction[0] = true;
_sort_direction[1] = true;
_sort_direction[2] = true;
_sort_direction[3] = true;
_sort_order[0] = 0;
_sort_order[1] = 1;
_sort_order[2] = 2;
_sort_order[3] = 3;
}
有人可以帮助我,或者有自定义Gtk :: TreeModel的工作示例吗?
答案 0 :(得分:2)
尝试在Gtk :: TreeModel之前初始化Glib :: Object。
ModelTracks::ModelTracks(Library* library_ptr) :
Glib::ObjectBase(typeid(ModelTracks)),
Glib::Object(),
Gtk::TreeModel(),
_library_ptr(library_ptr)
{
_sort_direction[0] = true;
_sort_direction[1] = true;
_sort_direction[2] = true;
_sort_direction[3] = true;
_sort_order[0] = 0;
_sort_order[1] = 1;
_sort_order[2] = 2;
_sort_order[3] = 3;
}