为GTK窗口创建形状掩码?

4

我想知道是否有人有关于gtk.Window/gtk.Widget下列函数的经验。

 shape_combine_mask(shape_mask, offset_x, offset_y)

我希望将窗口变成圆形而不是矩形。如何获取形状掩码?它说必须是位图。我应该使用gtk.Pixbuf从图像获取位图吗?还是应该使用cairocairo_region_create_from_surface获取一个形状,然后使用另一个接受gtk.Region作为第一个参数的函数?
如果有人能提供一个示例,无论是C/C++还是Python都非常好。
我使用的是GTK版本2。
提前感谢!

非常感谢! :D 你的回答非常有帮助!我尝试实现的这个功能只是为了应用程序的花哨而已,不是必要的,所以我不会转换到GTK3,但会为了好玩而尝试。再次感谢! - stamat
2
以下是第一条评论中示例的重新托管:https://gist.github.com/d6d31145007d2edc7706d09d955867de - bluss
1个回答

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接