我有兩個窗口,我的主窗口「窗口」和「幫助窗口」都在我的App Delegate中。在我的主窗口中,它的視圖是分類的,我想在其中繪製矩形。我的幫助窗口也有一個矩形,但它有一個NSTracker。我想要做的是在我的窗口子類中繪製矩形,其x和y座標等於我的NSTracker位置。我遇到的問題是當我嘗試引入座標時崩潰,對於我可能做錯什麼的想法?謝謝從其他類訪問int變量
//我的窗口的子類被稱爲CutoutView。這是所有在平局矩形
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];
}
//我與跟蹤helpView AppDelegate的是我的第二個窗口的視圖「幫助窗口」
-(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);
}
我CutoutView
我收到的AppController中的參考錯誤,因爲它在不同的窗口「helpWindow」?或者它與我的int值有關嗎?
它在哪裏崩潰?什麼是錯誤信息? – 2012-04-17 03:37:37
它說mouseLoc是發送到實例的無法識別的選擇器,我的mouseLoc是跟蹤器的NSPoint,是一個問題,它的x和y值,並從int值xValue和yValue訪問它們? – 2012-04-17 03:41:31