NSWindow设置的帧高于屏幕

BUD*_*Ax2 5 cocoa objective-c nswindow nswindowcontroller

我需要帮助.我有一个像Adium这样的应用程序,带有垂直滑块.但我的应用程序会根据内容更改窗口高度.如果屏幕高度低于我app'a窗口高度,我的窗口会自动降低高度.

当我尝试将setFrame用于我的窗口并将window.frame.size.height设置为高于屏幕高度时,没有任何反应.

所以问题是:如何设置窗框高于屏幕高度?

Enc*_*ada 7

默认情况下,框架确保您无法将窗口大小调整为超出屏幕框架.要更改此行为,请将您的子类化NSWindow,并覆盖该constrainFrameRect:toScreen:方法以返回未更改的帧; 这样的事情:

- (NSRect)constrainFrameRect:(NSRect)frameRect toScreen:(NSScreen *)screen
{
  //return the unaltered frame, or do some other interesting things
  return frameRect;
}
Run Code Online (Sandbox Code Playgroud)