首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何连续获取NSSlider的值?

如何连续获取NSSlider的值?
EN

Stack Overflow用户
提问于 2011-07-02 05:12:13
回答 3查看 7.8K关注 0票数 25

Cocoa中的NSSlider似乎并没有提供一个代理来接收像UISlider的Value Changed这样的事件。

例如,如何连续获取NSSlider的值并将其显示在NSTextField中?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-02 05:59:33

你需要研究一下Cocoa's Target/Action mechanism。这是您需要理解的一个基本的Cocoa概念。可以为滑块(和任何其他控件)提供一个目标(某个控制器对象)和一个操作(针对该控制器对象调用的方法)。

默认情况下,该操作在用户停止拖动时触发。在界面生成器中检查滑块的Continuous属性,使其在您滑动滑块时触发操作。

票数 48
EN

Stack Overflow用户

发布于 2018-08-31 10:29:38

使用计时器方法的一个优点是,它适用于使用键盘而不是鼠标来调整滑块的情况。如果用户在系统偏好设置中打开了“全键盘访问”,他们可以使用Tab键来提供滑块焦点。然后,它们可以按住箭头键,以便自动重复开始,这样您就会遇到类似于使用鼠标拖动的情况:目标/操作正在重复触发,并且您希望在保存到数据库之前等待片刻的平静。

你需要小心不要过早地删除你的NSTimer。例如,如果用户在这几秒钟内退出应用程序,您可能希望在终止进程之前将滑块值“刷新”到数据库。

票数 2
EN

Stack Overflow用户

发布于 2019-04-05 02:34:04

基于the answer of Joshua Nozzi的编程解决方案

Swift

代码语言:javascript
复制
slider.isContinuous = true

Objective-C

代码语言:javascript
复制
slider.continuous = YES;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6553265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档