- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 NSMenu
(应用程序停靠菜单),其中有几个具有相同操作的项目。
如何找出发件人项目(触发操作的项目)在其容器菜单中的索引? (我对标题
不感兴趣,因为它可能是重复的)
这就是我尝试过的,但它一直返回 0
(零)。
- (void)myAction:(id)sender
{
NSMenuItem* mi = (NSMenuItem*)sender;
int index = [[[mi parentItem] submenu] indexOfItem:mi];
NSLog(@"Clicked item with index : %d",index);
}
有什么想法吗? (有没有更好的方法来实现同样的目标?)
最佳答案
您可以使用菜单项的 representedObject
来存储对应用中某个对象的引用。在您的情况下,您可能会使用菜单项引用的文档:
[aMenuItem setRepresentedObject:yourDocument];
然后您可以像这样访问操作中的对象:
- (void)myAction:(id)sender
{
NSMenuItem* mi = (NSMenuItem*)sender;
YourDocument* doc = (YourDocument*)[sender representedObject];
//do something with doc
}
关于objective-c - 获取父菜单中 NSMenuItem(发送者)的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10222108/
我是iOS的新手,我想更新ViewDidLoad()函数中的文本。 这是我的按钮功能,单击按钮时会发生动画,并将值“1”添加到“resultText.text” - (IBAction)oneB
做了什么 我有一个名为 MyUser 的自定义 User 模型,如 full example for an custom user model 中所述。在文档和一个所谓的 UserProfile 上,
我有一个 NSMenu(应用程序停靠菜单),其中有几个具有相同操作的项目。 如何找出发件人项目(触发操作的项目)在其容器菜单中的索引? (我对标题不感兴趣,因为它可能是重复的) 这就是我尝试过的,但它
我正在开发一个带有 NSTableView 的 macOS 应用程序,我希望能够在用户选择一行时使用 Cmd+C 快捷键复制单元格的内容。我已经实现了该方法 copy(sender: AnyObjec
我一直在使用 MVVM 的 RelayCommand 成功地将操作绑定(bind)到 XAML,但是我的 ItemsControl 有一个小问题。
我的 C# Winform 面板中有一堆文本框。每行文本框的命名如下: tb1 tbNickName1 comboBox1 tb2 tbNickName2 comboBox2 tb3 tbNickNa
我有一个IBAction,例如: - (IBAction)thisThing:(id)sender { [self doSomething]; } 我想这样做(手动调用 IBAction): [s
我知道如何通过 zeromq 将字符串消息从 C++ 发送到 Python。 这是我知道的发送字符串消息的代码: C++ 发件人代码: void *context = zmq_ctx_new(); v
我是一名优秀的程序员,十分优秀!