【问题标题】:Lion Full Screen menu bar doesn't slide downLion 全屏菜单栏不向下滑动
【发布时间】:2011-08-10 07:30:04
【问题描述】:

我有一个没有边框、标题栏、按钮等的小窗口。我想支持全屏模式(新的 Lion 类型),而且我基本上已经完成了所有工作——我可以切换进出全屏模式和窗口自行调整大小等,没问题。

但是,当我将鼠标移动到屏幕顶部时,带有关闭全屏模式图标的菜单栏不会向下滑动。

我如何让它发挥作用?它是关闭风格面具的吗?还有什么?

【问题讨论】:

  • 添加标题栏时行为会改变吗?
  • 尝试将标题栏添加回原始窗口(以及关闭按钮、可调整大小的蒙版等),但没有效果:(
  • 我认为全屏在其他应用程序中正常工作?你在这个应用程序中对事件处理做了什么奇怪的事情吗?
  • 啊哈,关键在你为- (NSApplicationPresentationOptions)window: (NSWindow *)window willUseFullScreenPresentationOptions: (NSApplicationPresentationOptions)proposedOptions返回的内容中需要在返回值中添加NSApplicationPresentationAutoHideMenuBar | NSApplicationPresentationHideDock。嘎嘎。

标签: cocoa macos fullscreen menubar osx-lion


【解决方案1】:

啊哈,关键在于你的回报

 - (NSApplicationPresentationOptions)window: (NSWindow *)window willUseFullScreenPresentationOptions: (NSApplicationPresentationOptions)proposedOptions

除了NSApplicationPresentationFullScreen之外,还需要在返回值中添加NSApplicationPresentationAutoHideMenuBar | NSApplicationPresentationHideDock

【讨论】:

    【解决方案2】:

    要在 Lion 中使用全屏模式,您唯一需要做的就是在窗口上调用 ‑setCollectionBehavior: 并传入 NSWindowCollectionBehaviorFullScreenPrimary

    你不需要做任何其他事情。除非您的目标是 10.6 或更早版本,否则不需要所有 kiosk 模式的东西。

    【讨论】:

    • 原来你还需要为窗口委托设置演示选项……
    • 不。尝试一下。使用标准模板创建一个应用程序,然后在applicationDidFinishLaunching: 中调用[window setCollectionBehavior: NSWindowCollectionBehaviorFullScreenPrimary]。无需执行任何其他操作,菜单栏和停靠栏都可用。
    • 人力资源部。发生了一些奇怪的事情,因为我正是这样做的,但它没有出现。我正在使用一个没有标题栏或按钮或任何东西以及非标准形状的透明窗口。在我将这两个常量值添加到委托方法之前,我这辈子都无法让系统菜单栏降下来……
    猜你喜欢
    • 2014-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 2021-12-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多