开发者

How do I set the sender on a NSMenuItem's action?

开发者 https://www.devze.com 2022-12-30 16:50 出处:网络
开发者_如何学JAVAThe Apple documentation says that the sender passed to the NSMenuItem\'s action can be set to some custom object, but I can\'t seem to figure out how to do this. Is there a method I\'

开发者_如何学JAVAThe Apple documentation says that the sender passed to the NSMenuItem's action can be set to some custom object, but I can't seem to figure out how to do this. Is there a method I'm not seeing someplace in the documentation?


I'm not sure what piece of documentation you're referring to (a link would help).

You can use the -setRepresentedObject: method of NSMenuItem to associate an arbitrary object with a menu item:

//assume "item" is an NSMenuItem object:

NSString* someObj = @"Some Arbitrary Object";

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

Then when the menu item sends its action message you can obtain the object:

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

精彩评论

暂无评论...
验证码 换一张
取 消