gpt4 book ai didi

objective-c - 为什么我在基于文档的应用程序中收到无效上下文 0x0 错误?

转载 作者:行者123 更新时间:2023-12-04 05:23:43 26 4
gpt4 key购买 nike

我使用此代码在 View 中绘制一些矩形。
这是代码:

CGContextRef myContext =  [[NSGraphicsContext currentContext] graphicsPort];
CGContextSetRGBFillColor (myContext, 1, 0, 0, 1);
CGContextFillRect (myContext, CGRectMake (0, 0, 200, 100 ));
CGContextSetRGBFillColor (myContext, 0, 0, 1, .5);
CGContextFillRect (myContext, CGRectMake (0, 0, 100, 200));

当我在一个简单的 AppDelegate 中使用代码时,一切正常。但是,当我在任何基于文档的应用程序中使用它时(在 Document.m 中),我收到此错误:
<Error>: CGContextSetRGBFillColor: invalid context 0x0
<Error>: CGContextFillRects: invalid context 0x0
<Error>: CGContextSetRGBFillColor: invalid context 0x0
<Error>: CGContextFillRects: invalid context 0x0

我错过了什么?

最佳答案

我想我是个白痴!。当前上下文始终设置为主窗口。我可以通过子类化 View 并使用以下代码来管理它:

- (void)drawRect:(NSRect)dirtyRect {
[super drawRect:dirtyRect];
}

关于objective-c - 为什么我在基于文档的应用程序中收到无效上下文 0x0 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13441130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com