NSPanel 无边框但始终在顶部 问题注意事项

问题描述

我正在尝试制作一个看起来像这样的 NSPanel

borderless

这是这样初始化的

        let panel1 = NSPanel(contentRect: frame1,styleMask: [.borderless],backing: .buffered,defer: true)

问题是,当我点击该面板外的屏幕上的任何地方时,它就会消失。只有当我再次点击应用程序图标时,它才会出现。

通过以下实现,我让面板贴在顶部,但它有一个边框

        let panel1 = NSPanel(contentRect: frame1,styleMask: [.borderless,.nonactivatingPanel],defer: true)

边框(几个黑色像素)看起来像这样,但始终在顶部。

border

问题

如何让它无边框(如第一张图片)但始终在顶部(如第二张图片)。

注意事项

  • 两种变体都有 level = .mainMenu
  • 两种变体都有 collectionBehavior = [.canJoinAllSpaces,.fullScreenAuxiliary]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)