代码之家  ›  专栏  ›  技术社区  ›  Jeff Barger

如何设置nsmenuitem操作的发件人?

  •  11
  • Jeff Barger  · 技术社区  · 16 年前

    苹果的文档说,传递给nsmenuitem操作的发送者可以设置为某个自定义对象,但我似乎不知道该如何做。文档中是否有我没有看到的方法?

    1 回复  |  直到 16 年前
        1
  •  27
  •   Rob Keniger    16 年前

    我不确定您所指的文档是什么(链接会有所帮助)。

    你可以使用 -setRepresentedObject: 方法 NSMenuItem 要将任意对象与菜单项关联,请执行以下操作:

    //assume "item" is an NSMenuItem object:
    
    NSString* someObj = @"Some Arbitrary Object";
    
    [item setRepresentedObject:someObj];
    [item setAction:@selector(doSomething:)];
    

    然后,当菜单项发送其操作消息时,可以获取对象:

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