• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

Swift / Cocoa TrackingArea

  • Ersteller Ersteller Gelöschter User 168712
  • Erstellt am Erstellt am

Gelöschter User 168712

Gast
Moin,

ich das Problem, dass ich erkennen will, ob der Mauszeiger über einem bestimmten View liegt.
Meine Idee ist mit dem mouseEntered und dem mouseExited zu arbeiten. Leider stehe beim erstellen der TrackingArea etwas auf dem Schlauch.

Grüße
 
Nicht Swift, aber vielleicht hilft es:


-(void) setup {
NSTrackingArea* trackingArea = [[NSTrackingAreaalloc] initWithRect:self.frame
options: (NSTrackingMouseEnteredAndExited | NSTrackingMouseMoved | NSTrackingActiveInKeyWindow )
owner:self userInfo:nil];
[self.superview addTrackingArea:trackingArea];
}


-(void) mouseEntered:(NSEvent*) theEvent {
[[NSCursorpointingHandCursor] set];
}



-(void) mouseExited:(NSEvent*) theEvent {
[[NSCursorarrowCursor] set];
}
 
Code:
-(void) setup {
    NSTrackingArea* trackingArea = [[NSTrackingArea alloc] initWithRect:self.frame
                                                options: (NSTrackingMouseEnteredAndExited | NSTrackingMouseMoved | NSTrackingActiveInKeyWindow )
                                                  owner:self userInfo:nil];
    [self.superview addTrackingArea:trackingArea];
}

-(void)mouseEntered:(NSEvent *)theEvent {
    [[NSCursor pointingHandCursor] set];
}

-(void)mouseExited:(NSEvent *)theEvent {
    [[NSCursor arrowCursor] set];
}