2010-05-13 4 views

Répondre

22

Je ne sais pas de quelle pièce de documentation vous parlez (un lien aiderait).

Vous pouvez utiliser la méthode -setRepresentedObject: de NSMenuItem pour associer un objet quelconque avec un élément de menu: Ensuite, lorsque l'élément de menu

//assume "item" is an NSMenuItem object: 

NSString* someObj = @"Some Arbitrary Object"; 

[item setRepresentedObject:someObj]; 
[item setAction:@selector(doSomething:)]; 

envoie son message d'action que vous pouvez obtenir l'objet:

- (IBAction)doSomething:(id)sender 
{ 
    NSLog(@"The menu item's object is %@",[sender representedObject]); 
} 
+0

Je ne me souviens pas de la documentation, mais j'ai fini par comprendre. –

+0

Question stupide: Pourquoi utiliser le representatedObject quand on peut simplement utiliser le titre NSMenuItem? –

+4

Vous ne devriez pas utiliser de titres car ils peuvent être localisés, etc. Il est préférable d'utiliser '-representedObject' car il est conçu pour stocker des données arbitraires. –

Questions connexes