【问题标题】:Minimum window size of a Mac OS X applicationMac OS X 应用程序的最小窗口大小
【发布时间】:2011-07-26 16:40:35
【问题描述】:

这里有两个问题。

第一个问题,在我的 Mac OS X 应用程序中,窗口已启用调整大小。我的窗口内容是 500x500 的窗口大小。问题是用户可以调整它的大小,因此某些内容会被截断。我需要做什么才能使用户只能调整到最小尺寸(在我的情况下为 500x500)?

第二个问题,当我关闭我的 Mac 应用程序(通过单击窗口顶部的红十字按钮)时,应用程序图标停留在底部的 Dock 中。当用户再次单击它时,它不会启动应用程序,除非用户完全退出应用程序并重新启动它。我需要哪些设置才能让用户通过单击停靠图标来关闭并重新启动它?

谢谢

【问题讨论】:

  • 我总是尝试结合“最坏情况解决方案”的解决方案。例如,如果将您的布局放在某种可滚动的窗格中,您可以确保人们可以使用您的应用程序,即使他们的显示器具有“异国情调”的分辨率

标签: objective-c cocoa xcode macos nswindow


【解决方案1】:

使用-[NSWindow setMinSize:] 以编程方式设置最小尺寸,但您也可以在 Interface Builder 中设置最小尺寸(查看带有尺寸的选项卡)。

要让应用程序在窗口关闭时退出,您需要将其添加到您的应用程序委托中:

- (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)theApplication
{
    return YES;
}

【讨论】:

  • 太好了。感谢您的两个答案。对于第二个问题,我希望应用程序图标留在停靠栏中,以便用户可以重新打开它,就像说“活动监视器”一样。用户可以通过单击“交叉顶部栏按钮”将其关闭,然后可以重新打开它。这可能吗?
  • @Leo:是的,这当然是可能的。在那种情况下,您想要我引用的委托方法。但是如何实现你想要的行为,我不知道。由于在 StackOverflow 上一次问几个问题通常不是一个好主意,因此您最好为该问题打开一个新问题。引用 Activity Monitor 的行为,大多数人都能识别它。
  • 感谢 DarkDust。当我回到家时,我会给你的第一个答案,并会标记答案。
猜你喜欢
  • 2014-05-06
  • 2019-11-29
  • 2016-03-06
  • 2015-10-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-02
相关资源
最近更新 更多