设置NSWindow在当前屏幕中的位置



我是objective-c的新手。我已经创建了一个主窗口,我想在当前屏幕的右下角显示。我尝试了以下代码

- (void)windowDidLoad
{
    NSPoint pos;
    pos.x = [[NSScreen mainScreen] visibleFrame].origin.x + [[NSScreen mainScreen] visibleFrame].size.width - [mywindow frame].size.width ;
    pos.y = [[NSScreen mainScreen] visibleFrame].origin.y + [[NSScreen mainScreen] visibleFrame].size.height - [mywindow frame].size.height;
    [mywindow setFrameTopLeftPoint:pos];
}

里面有什么问题?如何解决?

使用

NSPoint pos; 
pos.x = [[NSScreen mainScreen] frame].size.width - [mywindow frame].size.width ;
pos.y = 0.0f;
[self.window setFrame:CGRectMake(pos.x, pos.y, [mywindow frame].size.width , [mywindow frame].size.height) display:YES];

因为[[NSScreen mainScreen] frame].origin。X总是0。如果mac屏幕从底部开始。

相关内容

  • 没有找到相关文章

最新更新