【发布时间】:2011-03-03 14:45:30
【问题描述】:
我有一个自定义子类 NSWindow,它使用 NSBordelessWindowMask 制成全屏无边框窗口。它工作得很好,据我所知,窗口本身没有任何问题或任何奇怪之处。
我想弄清楚为什么上述窗口中的自定义子类 NSView 以一种奇怪的方式响应 setFrame: 请求。而不是简单地接受请求,它们似乎正在经历某种变化——例如,将 x 坐标设置为 25 并将宽度设置为 800 不会像人们期望的那样将视图的右边缘设置为 825 .相反,宽度/高度会随着 x 和 y 坐标增长,即使当 [view frame].size.width 使用 NSLog 询问时它们会报告正确的数字。
尺寸蒙版应该不是问题,因为我已经完全禁用了它们,并且使用几种不同的配置得到了相同的结果。
有其他人经历过这种行为吗?
【问题讨论】:
-
您能否发布一些代码,以便我们了解您是如何创建窗口和视图的?
标签: objective-c cocoa subclass nsview nswindow