0

我有一个我正在维护的旧 mac C/C++ 程序。它仍然基于 rsrc 文件和 OS 9 系统调用。(是的,是的,我知道。我正试图将我的公司拖入 21 世纪,但另一位工程师仍在使用 OSX10.3.9!请可怜我)

我正在尝试获得修饰符快捷方式功能。例如,Cmd-S 有效。但是,Opt-Cmd-S 会闪烁“文件”菜单,但不执行任何操作,除非文件菜单已打开。

我查看了我的代码,发现我正在获取事件消息并将其传递给 MenuKey 以告诉我组合键代表什么菜单选项。但是,如果按下了多个修饰符,MenuKey 总是返回 0。

我从苹果文档中看到这已被弃用,但我宁愿不必重新编写整个程序就可以移动到 nib 等等。

那么,有没有人有一个快速而肮脏的工作?

谢谢。

4

1 回答 1

1

好吧,几乎所有的 Carbon UI 都已被弃用(尽管 MenuKey 比其他一些位更被弃用)。这并不是说它仍然不受支持,但是您应该使用 Cocoa 进行任何新的开发(即使是 10.3.9 上的版本也比您正在做的事情有了很大的改进)。

如果您不习惯使用 Carbon,请务必阅读头文件;那里有很多其他地方没有的文档和有用的提示。您应该使用 MenuEvent 而不是 MenuKey;MenuKey 不支持 Command 键以外的修饰符。

于 2009-10-23T19:07:13.720 回答