1

だから、私は印刷機能EXC_BAD_ACCESSをテストしようとしていますが、コードのこの部分を指し示すエラーが発生し続けます:

[op runOperationModalForWindow:(NSWindow*)[core window]
                      delegate:self
                didRunSelector:
 @selector(printOperationDidRun:success:contextInfo:)
                   contextInfo:NULL];

上記のコードは、Appleの開発者向けドキュメントから直接引用したものです。

このコードブロックの前にブレークポイントを設定しましたが、[core window]絶対NULLに割り当てられていないようです。

それで、何が問題なのですか?何か案は?


アップデート :

これを試しました:

[self setPrintView:[[[NSTextView alloc] initWithFrame:NSMakeRect(0,0,200,200)]
  retain]];

[[self printView] setString:[[[[core editor] currentDocument] editorView] string]];
[[self printView] setHidden:NO];

NSPrintOperation *op = [NSPrintOperation
                        printOperationWithView:[[self printView] retain]
                        printInfo:nil];

[op setCanSpawnSeparateThread:YES];
[op setShowsPrintPanel:NO];
[op runOperation];

そして私は今得ています:

*** -[NSStorage insertElement:atIndex:]: message sent to deallocated instance 0x121267ff0
4

1 に答える 1

0

私はちょうどそれを見つけました:

秘訣はreleaseNSTextView印刷機能の最後にあることです。

       ...
       [printView release];
}
于 2012-04-10T18:06:29.500 に答える