【问题标题】:Loop for NSSliderNSSlider 循环
【发布时间】:2012-03-07 04:12:06
【问题描述】:

我在我的项目中设置了一个 NSSlider,它需要在向上或向下移动时调用不同的方法。因此,如果它向上移动,它将执行一个方法,即 AppleScript,如果向另一个方向移动,则相反,另一个 AppleScript。我会用 IF 循环或其他东西来做到这一点吗?提前致谢!

【问题讨论】:

    标签: objective-c xcode macos applescript nsslider


    【解决方案1】:

    您应该跟踪滑块的旧值,然后与新值进行比较,看看它是向下移动还是向上移动。

    - (IBAction)slide:(id)sender {
        float newValue = [slider floatValue];
        if (newValue < oldValue) {
            // moved down
        } else {
            // moved up
        }
        oldValue = newValue;
    }
    

    【讨论】:

    • 太好了,知道如何跟踪滑块上的值吗?
    • 通过使用代码中提到的全局变量oldValue。您使用滑块的初始值对其进行初始化(代码中未显示)。然后每次滑块值更改时,您都会更新 oldValue (这就是我在 oldValue = newValue; 行中所做的
    猜你喜欢
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-01
    • 2017-09-22
    • 1970-01-01
    • 2018-09-06
    • 1970-01-01
    相关资源
    最近更新 更多