【GTK】如何得到控件的位置

来源:互联网 发布:excel数据生成折线图 编辑:程序博客网 时间:2024/04/30 05:54

不同的情况对应有不同的解决的办法.

如果你想得到一个控件相对于它的父窗口的位置,你需要使用widget->allocation.x 和 widget->allocation.y.

如果你想的到一个窗口相对于X主窗口(X root window)的位置,

      你应该使用gdk_window_get_geometry()

                         gdk_window_get_position() 

                 或者 gdk_window_get_origin().

如果你想得到一个窗口(包括WM修饰的窗口)的位置,应该使用gdk_window_get_root_origin().

最后但不是不重要,如果你想得到窗口管理器的位置,你应该使用gdk_window_get_deskrelative_origin().

你选择的窗口管理器(Window Manager)将可能影响上面函数的结果,在写你的程序的时候,你应该记住这一点.这主要是决定于窗口管理器如何管理对窗口添加的修饰.

原创粉丝点击