macos – 如何将数据从NSWindowController传递到NSViewController?

macos – 如何将数据从NSWindowController传递到NSViewController?,第1张

概述我的NSWindowController类中有一个NSToolBar按钮的IBOutlet,这是我的主窗口类: class MainWindowController: NSWindowController { @IBOutlet weak var myButton: NSButton! // ...} 我有一个类MainViewController,它是主窗口的内容NSVie 我的NSWindowController类中有一个NSToolbar按钮的IBOutlet,这是我的主窗口类:
class MainWindowController: NSWindowController {    @IBOutlet weak var mybutton: NSbutton!    // ...}

我有一个类MainVIEwController,它是主窗口的内容NSVIEwController.

如何在我的内容NSVIEwController中访问此按钮?有没有更好的方法来组织IBOutlets和控制器来促进这种访问?

这样使用委托怎么样?此示例将更改按钮的标题.
@objc protocol SomeDelegate {    func changeTitle(Title: String)}class VIEwController: NSVIEwController {    weak var delegate: SomeDelegate?    @IBAction func myAction(sender: AnyObject) {        delegate?.changeTitle("NewTitle")    }}class MainWindowController: NSWindowController,SomeDelegate {    @IBOutlet weak var mybutton: NSbutton!    overrIDe func windowDIDLoad() {        super.windowDIDLoad()        // Implement this method to handle any initialization after your window controller's window has been loaded from its nib file.        let myVc = window!.contentVIEwController as! VIEwController        myVc.delegate = self    }    func changeTitle(Title: String) {        mybutton.Title = Title    }}
总结

以上是内存溢出为你收集整理的macos – 如何将数据从NSWindowController传递到NSViewController?全部内容,希望文章能够帮你解决macos – 如何将数据从NSWindowController传递到NSViewController?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1048333.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存