【问题标题】:flex dynamically changing values between functionsflex 在函数之间动态改变值
【发布时间】:2011-06-03 10:33:50
【问题描述】:

我有一个主 mxml 和 2 个 AS 类。在主 mxml 中我有一个滑块。我想在移动滑块时获取 AS 类中的滑块值。

Main.MXML

import First;
import Second;
private var my:First;
privaate var scd:Second;
public var sd:Date; 

public function init():void {
     my = new First();
     Canvas.addChild(my.getUIComponent()); 
}

public function dateChange():Date {
    startDate.selectedDate = new Date(slider.values[0]);
    endDate.selectedDate = new Date(slider.values[1]);
    sd = new Date(slider.values[0]);
    scd.calsldr(sd); 
    return sd;                  
}

<mx:HBox width="100%" height="100%" horizontalAlign="center" verticalAlign="top">
<mx:Canvas id="Canvas" backgroundColor="#ffffff" height="600" width="100%"
            horizontalScrollPolicy="off" verticalScrollPolicy="off">
</mx:Canvas>
</mx:HBox>
<flexlib:HSlider id="slider" width="100%" height="50" thumbCount="2"                     lockRegionsWhileDragging="true" allowTrackClick="true" maintainProjectionCenter="true"
                 change="dateChange();" liveDragging="true"
                 thumbSkin="mx.skins.spark.SliderThumbSkin"
                 trackSkin="mx.skins.spark.SliderTrackSkin"
                 trackHighlightSkin="mx.skins.spark.SliderTrackHighlightSkin" />
<mx:HBox x="300" y="300" height="50">
<mx:Label text="Start Date :"/>     <mx:DateField id="startDate"/>
<mx:Label text="End Date"/>     <mx:DateField id="endDate"/>
</mx:HBox>

我的第一个 AS 是 first.AS 调用 Second.AS

addChild(new Second(str) as Sprite);

str 是一个字符串值

我想使用 Second.AS 中的滑块值 我试过用这个:

public function calsldr(dat:Date):void {
    trace(dat);
}

private function visualization():void{ }

我可以从 trace(dat) 中获取值....我的意思是日期随着滑块的变化而变化。 我如何在函数可视化()中使用这种变化的值

请帮忙。

【问题讨论】:

  • Err...为什么不能从 calsldr 调用可视化(str:date)?我在这里遗漏了一些东西。
  • 你告诉我们你想要完成什么,因为我看到了很多不好的做法,我觉得有一种非常简单的方法可以做你想做的事情做。
  • 什么是简单的方法......我想动态交换函数之间的值。
  • 比这更高。你想用你的代码来完成什么?
  • 你能检查答案吗.....

标签: apache-flex actionscript-3 flex4


【解决方案1】:

@J_A_X 第二个 AS 是:

public function Second(str:String){
    name = "Second";    }
public function calsldr(dat:Date){
    trace(dat+"fu in maaka"); // As I change the slider the value is changed here  }
protected override function init():void
    {
        var ldr:URLLoader = new URLLoader(new URLRequest(url));
        _bar.loadURL(ldr, function():void {
        var obj:Array = JSON.decode(ldr.data as String) as Array;
        //Sorted the values based on 'str'
    var data:Data = buildData(newarr);
        visualize(data);
        _bar = null; });
    }
public function visualize(data:Data):void{
      // I want to get the dat values here when ever the slider moves
}

【讨论】:

    猜你喜欢
    • 2012-05-01
    • 2019-12-29
    • 2015-05-12
    • 1970-01-01
    • 2018-08-26
    • 1970-01-01
    • 2010-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多