0

我将 AS3.0 与 Flash(不是 Flex)一起使用。我创建了一个名为 drawBarChart 的自定义类,并创建了一个名为 BarChart1 的实例。

var BarChart1 = new drawBarChart(barChartX, barChartY, barChartWidth, barChartHeight, barChartScale)

如果我稍后在代码中更改变量 barChartScale 的值,则 BarChart1 实例不会更改。有人可以向我解释使用 barChartScale 的新值更新 BarChart1 实例的正确语法是什么吗?

谢谢!

编辑:谢谢 Loxxy 和 shaunhusain 的回复。我已经尝试实施您的方法 Loxxy,但它仍然对我不太有效。通过一些跟踪语句,我可以看到我在自定义类 setChartScale 函数中得到了要更改的 _Scale 变量。但是由此产生的 _Scale 变化似乎并没有反映在最初创建实例的自定义类 BarChart 函数中。即实例上的比例值对我来说还没有改变。我会继续努力的!

4

1 回答 1

0

您需要的是公开 scale 属性以供以后访问。

这里的 Action Script 没有什么特别之处,只是一种编码练习。像这样实现它:

public class BarChart 
    {    
        var _Scale:Number;

        public function BarChart(barChartX, barChartY, barChartWidth, barChartHeight, barChartScale) 
        {
            // Set other properties...

            _Scale = barChartScale;

        }

        public function setChartScale(scale:Number)
        {
            _Scale = scale; 
        }    
    }

现在将其用作:

        var chart = new BarChart(0,0,80,80,1);

        chart.setChartScale(1.5);     // At a later point..
于 2012-05-19T17:54:56.680 回答