我正在使用Gtkmm4,很多API都被删除了。在Gtk3中,可以使用Gtk::Window::get_xid (从Gdk::Window继承),但这已经不可能了,因为Gdk::Window已经被重命名为Gdk::Surface,而Gtk::Window似乎不再继承它了。但是,人们总是可以使用XId获得Gdk::Surface的GDK_SURFACE_XID(surface)。我怎样才能得到Gdk::Surface的Gtk::Window,或者,或者,直接从Gtk::Window获得XId?
注意:我只需要使用Gtkmm 4的解决方案,而不是Gtkmm 3!
发布于 2021-01-22 20:12:14
处理底层表面的代码被分割成一个独立的接口Gtk::Native,然后Gtk::Window实现了这个接口。Gtk::Native有一个get_surface()方法,它应该像GTK 3中的Gtk::Window::get_window()那样工作。
https://stackoverflow.com/questions/65847741
复制相似问题