简体   繁体   中英

How to get the XId of a Gtk::Window in Gtkmm4

I am using Gtkmm4, and lots of API has been removed. In Gtk3 one could use Gtk::Window::get_xid (inherited from Gdk::Window ), but thats not possible anymore, because Gdk::Window has been renamed to Gdk::Surface , and Gtk::Window seems to not inherit from it anymore. But, one can always get the XId of a Gdk::Surface using GDK_SURFACE_XID(surface) . How can i get the Gdk::Surface of a Gtk::Window , or alternatively, get the XId from a Gtk::Window directly?
Note: i need only solutions using Gtkmm 4, not Gtkmm 3 !

The code that deals with the underlying surfaces got split off into a separate interface, Gtk::Native , which Gtk::Window then implements. Gtk::Native has a method get_surface() which should just work like Gtk::Window::get_window() did in GTK 3.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM