标签: nspoint

设置 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];

}
Run Code Online (Sandbox Code Playgroud)

它有什么问题?如何解决?

objective-c nswindow nswindowcontroller nspoint

5
推荐指数
1
解决办法
6159
查看次数

转换NSpoint并将值传递给CGRectMake

我在NSPoint中得到一个观点:

NSPoint: {273,534}
Run Code Online (Sandbox Code Playgroud)

我想通过273和534 CGrectMake.
例如:

viewTwo.frame=CGRectMake(273,534,someValue,someValue)
Run Code Online (Sandbox Code Playgroud)

我无法得到那些值NSpoint.
我尝试将它传递给NsArray和NSDictionary.什么都行不通.请帮忙

我在控制台中使用Po命令,发现我需要的值是在NSPoint中.但不知道如何转换它

objective-c ipad ios nspoint

4
推荐指数
1
解决办法
2812
查看次数

什么是计算单击鼠标的角度的正确方法

我的应用程序中有一个NSView的自定义子类。我想知道用鼠标单击的相对于原点的视图中的确切点。(即,不是相对于Window原点,而是相对于自定义视图原点)。

我一直使用它,效果很好:

-(void)mouseDown:(NSEvent *)theEvent
{
    NSPoint screenPoint = [NSEvent mouseLocation];
    NSPoint windowPoint = [[self window] convertScreenToBase:screenPoint];
    NSPoint point = [self convertPoint:windowPoint fromView:nil];

    _pointInView = point;

    [self setNeedsDisplay:YES];
}
Run Code Online (Sandbox Code Playgroud)

但是现在我得到一个警告,不建议使用convertScreenToBase,而应使用convertRectFromScreen。但是我不能从convertRectFromScreen得到相同的结果,无论如何,我对一点感兴趣,而不是矩形!

我应该用什么代替上面已弃用的代码?提前致谢!

macos nsview nspoint

4
推荐指数
2
解决办法
1034
查看次数

3
推荐指数
1
解决办法
1305
查看次数