2012-12-10 6 views
0

나는 3 개의 NSSlidersNSTextFields을 바인딩으로 설정했습니다.여러 NSSliders를 어떻게 링크하고 업데이트 할 수 있습니까?

각 슬라이더는 NSInteger 값을 나타내며 한 열은 낮고 한 열은 중간이고 한 열은 높습니다. Low의 최대 값을 98, Medium의 최대 값을 99, High의 최대 값을 100으로 설정했습니다. 값의 범위는 0-100이고 각 슬라이더의 차이는 사용 가능한 범위를 나타냅니다.

예 : Low가 10이고 Medium은 21, Low는 10-21, Medium은 21-High의 값입니다.

어떻게 낮게 만들 수 있습니까? 항상 중간 및 높음, 중간, 항상 낮고 높게, 높게 항상 낮고 중간보다 높음?

조건 중 하나가 충족되면 그 중 하나를 슬라이드하고 다른 슬라이더를 자동으로 슬라이드 할 수있게하는 것이 이상적입니다. 그러나 이것에 대해 가장 좋은 방법은 확실하지 않습니다. 지금 조건문의 톤, 옳지 않아 항상 작동하지는 않습니다).

답변

1
[slider setTarget:self]; // assume the handler is [self sliderDidMove:] 
[slider setAction:@selector(sliderDidMove:)]; 

sliderDidMove 변화에 다른 슬라이더의 값은

[self.otherSlider setDoubleValue:0.1]; 
+1

내 질문은 슬라이더를 이동하는 방법보다 더 적절한 범위 내에서 유지의 알고리즘에 대한 자세한입니다. – arooo