嘿,我有我工作的一个项目,我注意到我的NSRect,我在某倍的拉伸,y坐标将是我工作的决议的中心,是不是如果分辨率变化中心.我明白这一切是如何运作的.
问题是,我的项目将被显示在多种分辨率没有人知道一个可能的解决方案,无论屏幕是在什么方面或者分辨率居中的NSRect的.我必须声明为具有自定义绘制NSPanels我的班.关于可能解决方案的任何想法都会有所帮助.谢谢大家.
这是NSRect x,y,宽度,高度
NSRect windowFrame = NSMakeRect(400, 500, 500, 100);
Run Code Online (Sandbox Code Playgroud)
然后
window = [[Mainbox alloc] initWithContentRect:windowFrame
styleMask:NSBorderlessWindowMask
backing:NSBackingStoreBuffered
defer:NO];
Run Code Online (Sandbox Code Playgroud)
要将一个矩形置于另一个矩形中心,将内部矩形的原点设置为((外部矩形的原点加上外部矩形的一半)减去内部矩形的一半).
但是,你不需要这样做.
center在您订购之前向您的窗口发送消息.它将以适当的方式集中自身HIG.
您可能希望使用始于0,0而不是某个任意点的起始rect来初始化窗口,以确保如果有主菜单屏幕,则窗口将认为自己处于打开状态.
| 归档时间: |
|
| 查看次数: |
3729 次 |
| 最近记录: |