Как преобразовать тип «GtkWidget» в gtk+ в тип «Gtk::Widget» в gtkmm?

Я просто попробовал это.

GtkWidget* oldwnd = new GtkWidget();
Gtk::Widget wnd(*oldwnd);

Но не компилируется.

Кто-нибудь может сказать мне, как преобразовать типы в gtk+ в соответствующие типы в gtkmm?


person dannis    schedule 29.10.2011    source источник


Ответы (1)


Возможно Gtk::Widget* wnd = Glib::wrap(oldwnd)?

говорится в документации

Gtk::Widget* wrap (GtkWidget* object, bool take_copy=false);
person n. 1.8e9-where's-my-share m.    schedule 29.10.2011
comment
Кроме того, эта часть вашего примера не имеет смысла, потому что вы должны использовать функцию gtk__new() для создания экземпляра типа GTK+: GtkWidget oldwnd = new GtkWidget(); - person murrayc; 19.12.2012