如何从NSWindowController内部的NSToolbarItem中检测到单击?

时间:2018-12-21 21:40:05

标签: swift nswindow nstoolbaritem

我的MacOS应用程序上有一个用Swift开发的工具栏。工具栏项目可拖动到NSWindowController上,并且我可以设置IABAction函数,此刻我在函数中只有一个打印内容。当我单击该按钮时,没有任何反应,单击似乎没有被识别为动作?

该函数中还有几行代码,但是删除了它,现在只有print(“ test”)行。

@IBAction func exportCsvClicked(_ sender: NSToolbarItem) {   
print("test") }

未观察到输出,因此,我希望在单击此按钮时在控制台中进行“测试”。

这是与toolbarItem相关联的连接中的list

1 个答案:

答案 0 :(得分:0)

我找到了一种解决方法,即NSToolbarItem中的IBAction无法识别对此项目的点击:

1 /我从项目到主窗口控制器做了一个customSegue(它可以到任何地方)

2 /“准备序列”功能将一个通知发布到通知中,表明已单击该项目。

3 /主视图控制器观察通知并显示我在情节提要中设置的视图(带有StoryboardID),该弹出窗口或工作表(我有两个按钮)。我发现您需要传递所有必需的变量以从主视图Controller设置视图,并且工作表/弹出视图的viewDidLoad函数中的代码未运行,我怀疑它们可能有所不同实例。