我有一个用Ruby编写的桌面应用程序正在使用GTK2。这只是一个与GTK2一起玩的小测试应用程序,但是我在实现我想做的事情时遇到了问题。是否有任何方法使用GTK2进入标题栏(除了设置标题),特别是添加一个按钮(在最小/最大/等旁边,下图中的B)或添加选项到菜单单击标题栏上的图标时弹出(下图中的A)?
我认为可能没有,因为GTK意味着与许多不同的窗口管理器合作,但我只是想知道是否存在。作为一个附带问题,单击“交叉”按钮会触发什么事件?目前,如果用户点击该窗口消失但程序没有结束 - 我需要捕获该事件并退出该程序。
感谢您的帮助,包括打我的头,告诉我我有多傻。
答案 0 :(得分:1)
请注意,使用gtk_window_set_titlebar()
可以在GTK 3.10及更高版本中实现。它用自定义栏替换窗口管理器的标题栏。 GtkHeaderBar
是一个很好的自定义标题栏类。
但是,你不能让它看起来就像窗口管理器一样,因为你不知道用户正在运行哪个窗口管理器。
答案 1 :(得分:0)
不,标题栏由窗口管理器拥有,您通常无法直接访问它。
当用户通过单击窗口管理器按钮尝试关闭窗口时,窗口将收到delete event。