栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

防止GTK中的窗口重叠

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

防止GTK中的窗口重叠

使用

_NET_WM_STRUT
_NET_WM_STRUT_PARTIAL
(为了向后兼容)属性在X Window System桌面的边缘保留空间。

使用PyGtk,您可以像这样设置这些属性,假设self.window是gtk.Window的实例:

self.window.get_toplevel().show() # must call show() before property_change()self.window.get_toplevel().window.property_change("_NET_WM_STRUT",     "CARDINAL", 32, gtk.gdk.PROP_MODE_REPLACE, [0, 0, 0, bottom_width])

澄清上面的data参数

[0, 0, 0, bottom_width]

此参数按以下顺序指定桌面屏幕每个边框上保留空间的宽度:

[left, right, top, bottom]
。因此,
[0, 0, 0,50]
将在桌面屏幕底部为小部件保留50个像素。

这是一个简单的工作示例:

import gtkclass PyGtkWidgetDockExample:    def __init__(self):        self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)        self.window.set_default_size(100, gtk.gdk.screen_height())        self.window.move(gtk.gdk.screen_width()-100, 0)        self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DOCK)     self.window.show()       self.window.window.property_change("_NET_WM_STRUT", "CARDINAL", 32,  gtk.gdk.PROP_MODE_REPLACE, [0, 100, 0, 0])app = PyGtkWidgetDockExample()gtk.main()


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/640347.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号