【问题标题】:Centering Windows on screen在屏幕上居中窗口
【发布时间】:2010-12-23 17:24:41
【问题描述】:

简短而甜蜜:如何告诉 Interface Builder 将窗口置于用户屏幕的中心?我已经在检查器上看到了定位工具,但是目测并不总是像我喜欢的那样准确。这是我应该切换到 Xcode 并向 initawakeFromNib 方法添加一些东西的地方吗?

【问题讨论】:

  • 获取屏幕尺寸,将其除以 2,将窗口尺寸除以 2,然后用一半的窗口尺寸减去一半的屏幕尺寸。我的意思是:为 X 做它,为 Y 做它。

标签: cocoa interface-builder nswindow centering


【解决方案1】:

您可以使用 wahkiz 回答的[window center],但这可能不是您想要的。 documentation 声明这将使窗口水平居中,但略高于垂直中心。这样窗口就具有了视觉上的突出性。

如果您想将窗口放在精确中心,那么手动定位(如 Koning Baard XIV 所述)将适合您。

【讨论】:

    【解决方案2】:

    使用[window center]; 使窗口的中心与屏幕居中。 此外,假设您使用的是 10.5+,Interface Builder 中有一个从中心到屏幕的按钮。

    【讨论】:

    • 中心到屏幕的按钮在哪里?
    • 我的答案写于 2011 年——也就是 9 年前。可惜不知道有没有这样的按钮了!
    【解决方案3】:

    在您的 appdelegate 中,在 applicationfinishedlaunching 中,在底部添加此代码。

    [window center];
    

    【讨论】:

    • window 来自哪里?
    【解决方案4】:

    对于 macOS Mojave,这对我有用,在 AppDelegate applicationDidFinishLaunching 用于主窗口:

    [[[NSApplication sharedApplication] mainWindow] center];
    

    【讨论】:

      猜你喜欢
      • 2011-05-03
      • 1970-01-01
      • 2012-10-12
      • 2011-03-22
      • 2013-05-26
      • 2017-06-12
      • 2011-07-21
      • 2011-06-03
      • 1970-01-01
      相关资源
      最近更新 更多