Hammerspoon:在窗口的标题栏中绘制一条线
问题描述:
我想在聚焦的窗口的标题栏中绘制一条红线。对于这一点,我创建类似于以下代码(它意味着是一个最小的示例):Hammerspoon:在窗口的标题栏中绘制一条线
function foo()
f = hs.window.focusedWindow():frame()
line = hs.drawing.line(hs.geometry.point(f.x, f.y),hs.geometry.point(f.w,f.y))
line:setStrokeWidth(10)
line:setStrokeColor(hs.drawing.color.red)
line:show()
end
如果我进入Hammerspoon控制台此,随后
foo()
它绘制一条线如果控制台放置在显示屏的右半部分,则不在标题栏上。请参阅附件截图。事实上,如果控制台位于显示屏的左半部分,则根据控制台窗口的位置,红线的位置和长度会发生变化,并且可以在标题栏上绘制所需的红线。我完全糊涂了。代码有什么问题? 任何人都可以帮忙吗?
编辑
更多的照片被添加。请注意,使用setStrokeWith(30)
。
答
AS是,该代码将放置杆窗口宽度从屏幕的左侧远。看似固定的位置是因为窗口宽度相同。使用:
hs.geometry.point(f.x + f.w, f.y)
将第二个点放置在距第一个点的偏移处。
红线是否每次都在同一个地方开始?一些更好的描述或红色线的确切图像会有所帮助。 –
@AzureHeights更多照片已添加。 –
在所有情况下,似乎'f.w'或多或少都固定在同一点。 –