- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试以编程方式向我的 MonoMac 应用程序添加菜单。我打开了 MainMenu.xib 并从 MainMenu 控件中删除了所有 NSMenuItem
。
我将以下代码添加到我的 FinishedLaunching
覆盖中:
var fileMenuItem = new NSMenuItem("File");
var fileMenu = new NSMenu();
var fileNew = new NSMenuItem("New");
var fileOpen = new NSMenuItem("Open");
var fileSave = new NSMenuItem("Save");
fileMenu.AddItem(fileNew);
fileMenu.AddItem(fileOpen);
fileMenu.AddItem(fileSave);
fileMenuItem.Menu = fileMenu;
NSApplication.SharedApplication.MainMenu.AddItem(fileMenuItem);
但它什么也没做。
当我将代码添加到 MainWindowController.Initialize()
时,我得到一个断言失败“要插入菜单的项目已经在另一个菜单中”
我正在移植在此 SO 答案中找到的代码:Creating NSMenu with NSMenuItems in it, programmatically?
最佳答案
原来我必须做以下事情:
fileMenuItem.Submenu = fileMenu;
NSMenuItem 的 Submenu 属性应该设置为实际菜单而不是 Menu 属性。
关于c# - 在 MonoMac 中以编程方式创建 NSMenuItems,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7922911/
我想执行绑定(bind)到 NSMenuItem 的操作,我正在为 osx 应用程序开发一个插件。因此我不知道菜单项的目标方法。 (菜单项的目标返回 nil) 如何以编程方式按下 NSMenuItem
我可以使用商品的标签属性来存储特殊的 key /ID 还是用于其他用途? 预期用途示例: - (void)awakeFromNib { [self.popup addItemWithTit
我正在开发一个基于 Cocoa 文档的应用程序。我的文件菜单中有一个名为“Export Things...”的菜单项。此菜单项连接到第一响应者,并调用MyDocument中的选择器。到目前为止一切顺利
当您在 Mac 上按下 NSMenuItem 键盘快捷键时,菜单本身会突出显示,以指示该菜单中的操作已被激活。 如果您不熟悉该效果,请立即尝试选择一些文本,然后按 CMD-C,观看“编辑”菜单。它将闪
我想在 NSMenuItem 自定义 View 中放置一个动画进度条。这在 Apple 的 MenuItemView 示例中得到了演示,但它没有动画(至少在 10.5 中没有,并且该示例显然来自 10
我正在创建一个状态栏应用程序,它需要在文本字段中输入 URL。文本字段是 NSMenuItem 的 subview 。我面临的问题是,文本字段的值无法更改,只能“间接突出显示”(它不是正常的蓝色突出显
我有对最外层菜单的引用,但我试图获取对嵌套在子菜单中的 NSMenuItem 的引用: NSMenuItem* file_menu = [menu itemWithTitle:@"File]; fil
我有一个 NSMenuItem,我想为其使用等效的 Command-Option-C 键。但是,当我在 IB 中设置等效键时,应用程序实际运行时它不会与菜单项关联。该条目没有可见的等效键,并且该命令不
我试图理解 Cocoa 中的一些东西,但我陷入了一件事。我正在关注Minimalistic Cocoa Programming ,其中有一个 NSMenuItem 负责终止应用程序。现在,我想创建另一
我有一个 NSMenuItem,我需要更新它以显示进度(就像时间机器对其备份所做的那样)。问题是,当我在该 NSMenuItem 上设置新的 title 时,title 没有改变。 当我关闭并重新打开
我见过这样的事情: 在菜单项右侧的 Menulet 中,我不知道该怎么做。 谁能详细说明一下吗?谢谢! 最佳答案 您只能在 Cocoa 中使用 NSMenuItem 的自定义 View 行为来执行此操
我正在我的应用程序上创建一个状态栏,菜单显示正常,但它似乎无法访问我为其设置的操作。 我通过 C 函数添加状态栏: void MyFunction(CefRefPtr browser) { M
我有一个 NSMenuItem,我需要更新它以显示进度(就像时间机器对其备份所做的那样)。问题是,当我在该 NSMenuItem 上设置新的 title 时,title 没有改变。 当我关闭并重新打开
我以编程方式创建一个 NSMenuItem,但它被禁用。如果我重写 validateMenuItem: 方法并为所有项目返回 YES,则菜单项工作正常。 当我告诉菜单 autoEnableItems
我对 NSMenu 进行了子类化,并通过 Interface Builder 连接了一堆 NSMenuItem。我已经通过调试器进行了测试,看看它们确实得到了初始化。 菜单设置为不自动启用项目。尽管如
我在 Swift 1.2 中有一个基于文档的应用程序。我想以编程方式生成对当前 NSDocument 有操作的 NSMenuItem,然后检查该选择。这是我到目前为止所拥有的: AppDelegate
假设我有一个 menuBar 应用,子菜单上有 3 个项目: let delaySubMenu = NSMenu() delaySubMenu.addItem(NSMenuItem(title: "5
我能够使用以下代码以编程方式创建菜单项。 primaryMenu.addItem(NSMenuItem(title: "MenuTitle", action: nil, keyEquivalent:
我目前正在向我的 NSMenu 添加一个 NSMenuItem,并且我能够成功检测并处理点击事件。但是,我想添加第二个选项并检测用户是否在按住 SHIFT 的同时单击了 menuItem let me
我的项目中有一个 NSMenuItem: var statusBar = NSStatusBar.systemStatusBar() var statusItem : NSStatusItem = N
我是一名优秀的程序员,十分优秀!