我使用AS3.0和Flash(不是Flex)。我创建了一个名为drawBarChart的自定义类,并创建了一个名为BarChart1的实例。
var BarChart1 = new drawBarChart(barChartX, barChartY, barChartWidth, barChartHeight, barChartScale)
如果我稍后在代码中更改变量barChartScale的值,则BarChart1实例不会更改。有人可以向我解释一下,使用barChartScale的新值更新BarChart1实例的正确语法是什么?
谢谢!
编辑:谢谢Loxxy和shaunhusain的回复。我已经尝试过实施你的方法Loxxy,但它还没有为我工作。通过一些跟踪语句,我可以看到我得到的_Scale变量可以在自定义类setChartScale函数中反映出来。但是,生成的_Scale更改似乎没有反映在最初创建实例的自定义类BarChart函数中。即,实例上的比例值对我来说还没有改变。我会继续努力吧!答案 0 :(得分: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..