Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 Force Flex 4 Spark hs滑块捕捉到特定值?_Actionscript 3_Apache Flex_Flex4_Mxml_Flex Spark - Fatal编程技术网

Actionscript 3 Force Flex 4 Spark hs滑块捕捉到特定值?

Actionscript 3 Force Flex 4 Spark hs滑块捕捉到特定值?,actionscript-3,apache-flex,flex4,mxml,flex-spark,Actionscript 3,Apache Flex,Flex4,Mxml,Flex Spark,我记得在旧的mx:HSlider上使用了values数组,s:HSlider有什么解决方法吗 基本上,我需要在下面的步骤300500100020002500中选择300和2500之间的值 <s:HSlider id="franchiser" value="1500" skinClass="components.HorizontalSlider" x="0" y="0" minimum="300" maximum="2500" /> 如果不使用此组件,是否

我记得在旧的mx:HSlider上使用了values数组,s:HSlider有什么解决方法吗

基本上,我需要在下面的步骤300500100020002500中选择300和2500之间的值

<s:HSlider id="franchiser" 
   value="1500" 
   skinClass="components.HorizontalSlider" x="0" y="0" 
   minimum="300" maximum="2500" />

如果不使用此组件,是否有其他可蒙皮滑块


提前谢谢

默认的HSlider没有此功能

要实现这一点,您需要创建一个扩展HSlider并添加此功能的类


您可以在这里看到如何扩展Flex类的示例:

默认的HSlider没有此功能

要实现这一点,您需要创建一个扩展HSlider并添加此功能的类


您可以在这里看到一个如何扩展Flex类的示例:

扩展,然后通过拇指拖动或跟踪单击使用


找到单击时的值,并四舍五入到最接近的值。这比旧的捕捉行为要好,因为您可以执行一些很酷的操作,如对数捕捉(例如捕捉到1,101001000)。

扩展,并在拇指拖动或跟踪时单击使用

找到单击时的值,并四舍五入到最接近的值。这比旧的捕捉行为要好,因为你可以做一些很酷的事情,比如对数捕捉(例如捕捉到1,101001000)。

对于那些可能需要它的人,这里有一个基本的解决方法(可以很容易地放在类中):

<fx:Script>
  <![CDATA[

    import mx.collections.ArrayCollection;

    [Bindable]
    private var sliderValues:ArrayCollection =
      new ArrayCollection([300,500,1000,2000,2500]);

  ]]>
</fx:Script>
...
<s:HSlider id="sldr"
  minimum="0" maximum="{sliderValues.length - 1}"
  stepSize="1" snapInterval="1"
  dataTipFormatFunction="{
    function():String
    {
      return sliderValues[sldr.value].toString();
    }}"/>

<s:Label text="{sliderValues.getItemAt(sldr.value)}"/>

...
这里有一个基本的解决方法(可以很容易地放在类中),供可能需要它的人使用:

<fx:Script>
  <![CDATA[

    import mx.collections.ArrayCollection;

    [Bindable]
    private var sliderValues:ArrayCollection =
      new ArrayCollection([300,500,1000,2000,2500]);

  ]]>
</fx:Script>
...
<s:HSlider id="sldr"
  minimum="0" maximum="{sliderValues.length - 1}"
  stepSize="1" snapInterval="1"
  dataTipFormatFunction="{
    function():String
    {
      return sliderValues[sldr.value].toString();
    }}"/>

<s:Label text="{sliderValues.getItemAt(sldr.value)}"/>

...

OMG,有时候我真的很讨厌Adobe:(是的,我有点期待,但希望社区中有一些经验证的解决方案……是的,Adobe表示他们的立场是添加所需的内容,而不是添加方便的方法,所以不幸的是,你必须自己做。祝你好运找到另一个解决方案,但我猜你将不得不自己编写它。天哪,sometimes我真的很讨厌Adobe:(是的,我有点期待,但希望社区中有一些经过验证的解决方案……是的,Adobe表示他们的立场是添加所需内容,而不是添加方便的方法,所以不幸的是,你必须自己做。祝你好运找到另一个解决方案,但我猜你必须自己编写。