在Cocoa中实现“擦洗滑块”?

在Cocoa中实现“擦洗滑块”?,cocoa,user-interface,Cocoa,User Interface,我将如何实现类似于Photoshop和其他许多图像处理应用程序中的一些简单的滑块呢 它们有点难以描述。。基本上,您有一个常规的数字输入框,但您可以单击并按住鼠标按钮,它的功能就像一个滑块,直到您松开为止。如果在框中单击,您可以像往常一样选择文本、编辑/粘贴/等 描述它,我把一个例子的滑块放在一起 另一个类似的实现是Final Cut Pro中的点动轮,它的功能类似,没有下面的数字读数 我似乎找不到任何关于实现这些的提及,尽管可能有其他名称。它适用于OS X 10.5 Cocoa应用程序 它适用于

我将如何实现类似于Photoshop和其他许多图像处理应用程序中的一些简单的滑块呢

它们有点难以描述。。基本上,您有一个常规的数字输入框,但您可以单击并按住鼠标按钮,它的功能就像一个滑块,直到您松开为止。如果在框中单击,您可以像往常一样选择文本、编辑/粘贴/等

描述它,我把一个例子的滑块放在一起

另一个类似的实现是Final Cut Pro中的点动轮,它的功能类似,没有下面的数字读数

我似乎找不到任何关于实现这些的提及,尽管可能有其他名称。它适用于OS X 10.5 Cocoa应用程序

它适用于颜色分级应用程序,其中用户可能需要进行微小调整0.001,例如,对同一控件进行巨大调整,例如,-100+100。常规滑块在该值范围内不够精确


将值复制并粘贴到框中是清除值的第二个问题,Photoshop/Shake设置非常好。控件的不可见性也是一个很低的问题,因为它不是一个常规的桌面应用程序。它们很糟糕,因为它们阻止用户拖动来选择数字的文本

更好的方法是在字段下方设置一个微型滑块,当用户按住鼠标按钮时,该滑块将扩展为全尺寸滑块,当用户释放鼠标按钮时,该滑块将收缩回其微型尺寸。这样,选择行为仍然可用,但您也可以以更明显的方式提供滑块


Cocoa中没有任何一个内置类。您必须实现自己的。

我遇到过这些问题。它们很糟糕,因为它们阻止用户拖动来选择数字的文本

更好的方法是在字段下方设置一个微型滑块,当用户按住鼠标按钮时,该滑块将扩展为全尺寸滑块,当用户释放鼠标按钮时,该滑块将收缩回其微型尺寸。这样,选择行为仍然可用,但您也可以以更明显的方式提供滑块


Cocoa中没有任何一个内置类。您必须实现自己的功能。

我怀疑Cocoa框架中是否存在这种功能。据我记忆所及,这份报告没有提到这一点


您可以通过使用自定义视图和跟踪鼠标事件(mouseDown:、mouseUp:、-mouseDragged:)自己开发一个。我怀疑Cocoa框架中是否存在这种情况。据我记忆所及,这份报告没有提到这一点


你可以通过使用自定义视图和跟踪鼠标事件来开发一个。mouseDown:,mouseUp:,-mouseDragged:。

我一直认为是Photoshop用户TV的人发明了这个名字。我不知道Adobe会用这个词,我一直认为是Photoshop用户TV发明了这个名字。我不知道Adobe使用了这个术语。防止用户拖动来选择他们不喜欢的文本,如果你双击,它通常会禁用Scrubyness,因此你可以选择文本,通常情况下,它通常通过在shake/Photoshop中单击来激活。也就是说,我只在相当高端的应用程序中见过这样的控件,它们非常有用,而且使用起来非常好。我同意它们对于普通桌面应用程序来说有点晦涩难懂。如果你想选择文本,并且还没有发现双击可以选择,但单击一次就不能选择,那么它们就没那么有用了。我支持我建议的另一种选择,它同样有效,并且对用户来说是显而易见的。防止用户拖动选择他们不喜欢的文本,如果双击,它通常会禁用Scrubynes,因此您可以选择文本,通常情况下,它通常通过在shake/Photoshop中单击来激活。也就是说,我只在相当高端的应用程序中见过这样的控件,它们非常有用,而且使用起来非常好。我同意它们对于普通桌面应用程序来说有点晦涩难懂。如果你想选择文本,并且还没有发现双击可以选择,但单击一次就不能选择,那么它们就没那么有用了。我支持我建议的替代方案,它同样有效,并且对用户来说是显而易见的。