resize - 带有“桌面”类型提示的可移动 GtkWindow
问题描述
我目前正在尝试在背景中制作一个窗口而不是图标。我的窗口没有装饰,但有一个自定义标题,所以它仍然可以拖动和调整大小。
此行为是使用以下代码实现的:
win.SetKeepBelow(true)
win.Connect("window-state-event", func(window *gtk.Window, event *gdk.Event) {
windowEvent := gdk.EventWindowStateNewFromEvent(event)
newWindowState := windowEvent.NewWindowState()
if (newWindowState & gdk.WINDOW_STATE_ICONIFIED) == gdk.WINDOW_STATE_ICONIFIED {
window.Present()
}
})
但是,这种做法非常不可靠。
实现这种行为的正确方法似乎是:
win.SetTypeHint(gdk.WINDOW_TYPE_HINT_DESKTOP)
这种方法的问题是,窗口变得不可调整大小且不可移动。
那么,我怎样才能让窗口重新调整大小和可移动,或者至少改进我自己不可靠的方法?
解决方案
推荐阅读
- html - 如何根据浏览器的宽度调整所有对象的大小?
- angular - 枚举打字稿
- google-apps-script - 使用媒体上传方法在 appscript 中发送带有附件的电子邮件
- angular - 为什么角度代理在 wampserver 中不起作用
- android - 如何在 android 标签视图中清除第一个标签视图数据
- post - 使用 HttpBuilder 通过 POST 请求上传 txt 文件
- vhdl - UART 在 VHDL 中接收数据
- javascript - 为什么 JavaScript 中优先级较低的运算符首先被执行?
- php - PHP 非阻塞 http 请求
- scala - 在 Scala 中,理解的产出是如何工作的?