私は2つのウィンドウを持っています。私のメインウィンドウ "ウィンドウ"と "ヘルプウィンドウ"はすべて私のApp Delegateの中にあります。私のメインウィンドウでは、そのビューはサブクラス化されており、その内部にrectを描画したいと考えています。私のヘルプウィンドウにもrectがありますが、それにはNSTrackerがあります。私がしたいことは、ウィンドウのサブクラスにxとyの座標を自分のNSTrackerの位置に合わせてrectを描画することです。私が持っている問題は、私が座標を持って来ようとするとクラッシュし、私が間違っていることがあるという考えはありますか?ありがとう他のクラスからint変数にアクセスする
//私のサブクラスのウィンドウは、CutoutViewと呼ばれます。これは、トラッカーhelpViewと私AppDelegateは私の第二のウィンドウ「ヘルプウィンドウ」の図を参照され
AppDelegate *controller = [[[NSApp delegate] window] contentView];
xValue = controller.mouseLoc.x;
yValue = controller.mouseLoc.y;
NSRectFillUsingOperation(NSMakeRect(xValue,yValue, 600, 400), NSCompositeClear);
[self update];
- (void)update
{
NSLog(@"test");
[self setNeedsDisplay:YES];
}
// RECTすべて引き分けで私CutoutViewで
-(void)updateTrackingAreas
{
if(trackingArea != nil) {
[self.helpView removeTrackingArea:trackingArea];
[trackingArea release];
}
opts = (NSTrackingActiveAlways | NSTrackingMouseEnteredAndExited | NSTrackingMouseMoved);
trackingArea = [ [NSTrackingArea alloc] initWithRect:[self.helpView bounds]
options:opts
owner:self
userInfo:nil];
[self.helpView addTrackingArea:trackingArea];
}
-(void)mouseMoved:(NSEvent *)theEvent
{
mouseLoc = [NSEvent mouseLocation];
NSLog(@"mouseMoved: %f %f", mouseLoc.x, mouseLoc.y);
}
である私はのAppControllerを取得していますそれは別のウィンドウ "helpWindow"にあるので間違っていますか?それとも私のint値と関係がありますか?
どのラインがクラッシュしていますか?エラーメッセージとは何ですか? –
これは、mouseLocがインスタンスに送信された認識できないセレクタであると言っています。私のmouseLocはトラッカーのNSPointです。x値とy値を取ってint値xValueとyValueからアクセスするのは問題ですか? –