Ich habe eine kleine Kakao-App, die normalerweise im Hintergrund läuft (als Agent). Manchmal möchte ich in der Lage sein, ein Kontextmenü zu öffnen (kein Fenster oder s.th. sichtbar zu dieser Zeit).
Da ich nur Snow Leopard im Visier habe, habe ich dies versucht:
if (windows) {
NSMenu *theMenu = [[[NSMenu alloc] initWithTitle:@"test"] autorelease];
[theMenu setShowsStateColumn:NO];
[theMenu setAutoenablesItems:NO];
for (id item in windows) {
NSString *labelText = @"some text";
NSMenuItem *theMenuItem = [[[NSMenuItem alloc] initWithTitle:labelText
action:@selector(menuItemSelected:)
keyEquivalent:@""] autorelease];
[theMenuItem setTarget:self];
[theMenuItem setRepresentedObject:item];
[theMenuItem setEnabled:YES];
[theMenuItem setImage:icon];
[theMenu addItem:theMenuItem];
}
[theMenu popUpMenuPositioningItem:nil atLocation:[NSEvent mouseLocation] inView:nil];
}
Das Menü öffnet sich perfekt, aber wenn ich mit dem Mauszeiger über die Elemente fahre, werden sie nicht hervorgehoben und ich kann sie nicht anklicken.
Die Methode menuItemSelected: sieht wie folgt aus:
-(IBAction)menuItemSelected:(id)sender {
}
Irgendeine Idee, was ich falsch mache?