Actionscript 3 As 3.0 2补充滑块

Actionscript 3 As 3.0 2补充滑块,actionscript-3,slider,Actionscript 3,Slider,问题是用AS 3.0为两个滑块编码,当第一个滑块增加一个uint时,另一个滑块减少相同的uint,反之亦然。因此Flash slider类的文档 下面是我将如何着手的: // Add the sliders to the stage, lets call them `slider1` & `slider2`. // Store each value of the slider var slider1Position:Number = slider1.value; var slider2P

问题是用AS 3.0为两个滑块编码,当第一个滑块增加一个uint时,另一个滑块减少相同的uint,反之亦然。

因此Flash slider类的文档

下面是我将如何着手的:

// Add the sliders to the stage, lets call them `slider1` & `slider2`.
// Store each value of the slider
var slider1Position:Number = slider1.value;
var slider2Position:Number = slider2.value;
// Set liveDragging to true so the CHANGE event is fired continuously
slider1.liveDragging = true;
slider2.liveDragging = true;
// Add event listeners to listen for when they are moved. 
slider1.addEventListener(SliderEvent.CHANGE, onSlider1Changing);
slider2.addEventListener(SliderEvent.CHANGE, onSlider2Changing);

function onSlider1Changing(e:SliderEvent):void {
    var difference:Number = e.value - slider1Position;
    // update the position of the other slider
    slider2.value += difference;
}

function onSlider2Changing(e:SliderEvent):void {
    var difference:Number = e.value - slider2Position;
    // update the position of the other slider
    slider1.value += difference;
}

试试看。我希望手动设置该值不会触发更改事件…

很抱歉,它不起作用。我以这种方式进行(slider1)和(slider2)之间作为从机的交互

var slider1Position:Number = slider1.value;
var slider2Position:Number = slider2.value;
slider2.value = 100; // max value for the sliders is 100 as an example.

slider1.addEventListener(SliderEvent.CHANGE, onSlider1Changing);

function onSlider1Changing(e:SliderEvent):void {
slider1Position = e.value;
slider2.value = 100 - slider1Position;
}
整个代码中缺少的是另一种方式,即slider2被视为激活器,slider1被视为从机

var slider1Position:Number = slider1.value;
var slider2Position:Number = slider2.value;
slider2.value = 100; // max value for the sliders is 100 as an example.

slider1.addEventListener(SliderEvent.CHANGE, onSlider1Changing);

function onSlider1Changing(e:SliderEvent):void {
slider1Position = e.value;
slider2.value = 100 - slider1Position;
}

我真的不希望为我的问题烦恼。

使用flex还是从头开始?非常感谢您提出这个问题。实际上,我想让它与Flash(滑块)UI组件一起工作。如果你能帮我解决这个问题,那就太好了。Daf/瑞典