gpt4 book ai didi

cocoa - 处理 Cocoa 中 NSSegmentedControl 选定的段更改

转载 作者:行者123 更新时间:2023-12-03 16:28:19 25 4
gpt4 key购买 nike

请原谅这个 super 菜鸟的问题,但我在过去的一个小时里一直在谷歌上搜索这个问题,并且因为我似乎找不到这样一个非常基本的问题的答案而感到沮丧:

如何处理 Cocoa 中的控件更改?

我来自 iOS,很明显 Cocoa 并不像 UIKit 那样使用导出或委托(delegate)来处理事件,我觉得我在这里错过了一些非常重要的信息。我已经发现它使用了第一响应者链,但除此之外我不知道如何实际执行它,或者如何找到这些事件的定义或记录位置。

所以我在 NSToolBar 中有一个 NSSegmentedControl,我只想知道用户何时更改所选段。我已经仔细阅读了类文档,但没有看到任何提及要处理的事件或操作的单一。我确实注意到,如果我将控件的 action 导出拖到我的第一响应者代理上,我会列出一千万种不同的操作,但这些操作似乎都不相关。

我到底该如何在 Cocoa 中执行此操作?

最佳答案

这是我的一个项目的代码

var currntSeg : Int = 1
@IBOutlet weak var acSwitch: NSSegmentedControl!
@IBAction func SwitchButton(_ sender: AnyObject) {
switch acSwitch.selectedSegment {
case 0:
currntSeg == 0 ?
self.navVC?.pushViewController(Sleeper!, animated: true) :
self.navVC?.popViewController(Sleeper!, animated: true)
case 1:
currntSeg < 1 ?
self.navVC?.pushViewController(Work!, animated: true) :
self.navVC?.popViewController(Work!, animated: true)
case 2:
currntSeg < 2 ?
self.navVC?.pushViewController(Student!, animated: true) :
self.navVC?.popViewController(Student!, animated: true)
default:
self.navVC?.pushViewController(Rose!, animated: true)
}
currntSeg = acSwitch.selectedSegment
print("Selected Seg: \(acSwitch.selectedSegment)")
}

关于cocoa - 处理 Cocoa 中 NSSegmentedControl 选定的段更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43477557/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com