我有一个窗口,我设置了它setContentBorderThickness:42 forEdge:NSMinYEdge
。
现在,当我这样做时,[[window contentSize] frame]
它仍然显示窗口的尺寸(减去带有标题和按钮的顶部栏),但它不会减去边框厚度的 42。
请问,我如何获得空白区域的正确尺寸?
我有一个窗口,我设置了它setContentBorderThickness:42 forEdge:NSMinYEdge
。
现在,当我这样做时,[[window contentSize] frame]
它仍然显示窗口的尺寸(减去带有标题和按钮的顶部栏),但它不会减去边框厚度的 42。
请问,我如何获得空白区域的正确尺寸?
你应该使用 notcontentSize
但是contentView
。如果您使用 42 像素高度 BorderThickness 而不是从窗口视图的高度中减去该高度,如下所示:
NSRect windowFrame = [[window contentView] frame];
windowFrame.size.height = windowFrame.size.height - [window contentBorderThicknessForEdge:NSMinYEdge];
NSLog(@"TRUE height: %f",windowFrame.size.height);