连接基于文档的应用程序中的菜单项

发布于 2024-10-16 02:31:57 字数 373 浏览 2 评论 0原文

我已经就这个主题提出了几个问题,但还没有真正收到关于如何做到这一点的真正答案(它实际上收到了“风滚草徽章”,哈哈)。

我有一个基于文档的应用程序(意味着 Menu.Xib 与 MyDocument.Xib 是分开的)。

假设我想向 MyDocument(主界面)添加一个“粗体”按钮或一个“检查拼写”按钮(Menu.xib 中列出的项目(在“格式 > 字体”等下))。我不知道如何执行此操作。

任何帮助将不胜感激(如果有效,我将立即奖励答案,这已经困扰了我几个星期了)

我尝试将字体管理器添加到 MyDocument.Xib 并以这种方式连接,但粗体按钮只能启用,另外,拼写检查等功能无法通过字体管理器激活。

苹果文档非常模糊

I've already asked a couple questions on this topic, and haven't really received a real answer on how to do it (it actually received the "Tumbleweed Badge" lol).

I have a document based application (meaning the Menu.Xib is separate from MyDocument.Xib).

Say I want to add a 'Bold' button, or a Check Spelling button (items that are listed in Menu.xib (under Format > Font etc) to MyDocument (the primary interface). I cannot figure out how to do this.

Any help would be greatly appreciated (I will reward an answer immediately if it works, this has stumped me for a couple weeks now).

I tried adding a Font Manager to MyDocument.Xib and connecting that way, but the Bold button only enables, it doesn't disable. Plus, Spell Check etc can't be activated via Font Manager.

There has to be a better way to do this.

The Apple Documentation is incredibly vague.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

嗳卜坏 2024-10-23 02:31:57

这正是 IB 中第一响应者对象的用途。它是用于连接操作的代理对象。发送给它的任何操作消息都将沿着响应者链传递到第一个接受它们的对象。对于基于文档的应用程序,响应者链包括当前文档。因此,要将菜单项连接到文档:

  1. 如果需要,将操作添加到第一响应者。您可以从 IB 的检查器窗口执行此操作。
  2. 将操作连接到第一响应者,就像它是一个普通对象一样。
  3. 在文档中实现操作方法。

如果您需要以编程方式向第一响应者添加消息,请将对象的目标设置为nil

This is exactly what the First Responder object in IB is for. It is a proxy object for connecting actions. Any action messages sent to it will be passed down the responder chain to the first oobject that accepts them. For document based applications, the responder chain includes the current document. So, to connect the menu item to your document:

  1. Add the action to First Responder, if needed. You can do this from IB's inspector window.
  2. Connect the action to First Responder as if it were a normal object.
  3. Implement the action method in your document.

If you need to add a message to the first responder programatically, set the object's target to nil.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文