我在基于文档的应用程序(即粗体、斜体等)中实现一些快捷方式时遇到了一些麻烦:
Connecting Menu Items in Document Based Applications
问题是所描述的方法断开了实际的“Bold”菜单项与字体管理器的连接,并将其替换为我创建的操作(在本例中为 boldIt
)。因为只能有一个发送的 Action ,所以它被替换,而不是添加。我怎样才能克服这个问题?非常令人沮丧。如果有人可以帮助我,我将不胜感激。
扎克
最佳答案
由于您无法让一个菜单触发两个操作,因此有两种好方法可以解决此问题:
1) 让您的 boldIt:
操作在完成工作后调用 NSFontManager
中的适当方法。这里的缺点是无论调用什么 boldIt:
都需要了解字体管理器。
2) 子类 NSFontManager 并重写 addFontTrait:
以包含选择“粗体”时所需的行为,然后使用 [super addFontTrait:sender] 调用父类(super class)上的原始方法
.
关于objective-c - 急救人员遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4906110/