问题描述
|
我只是深入研究了ActionScript 3和Flash,想知道如何在不进行时间轴编码的情况下为我的应用程序UI创建工具栏,因为这是不好的面向对象实践。例如,我的工具栏有一个指针工具和一个绘图工具。当我单击工具栏中的“指针工具”按钮时,我希望将其按下。我了解您可能必须为每个“按钮状态”创建不同的关键帧,但是如何在不使用goToFrame或时间轴中进行编码的情况下,如何在代码中控制状态?
解决方法
我在这里看到2个潜在类别:
工具列
工具
随着您个人的课堂扩展工具
绘图工具
指针工具
您的工具栏类将创建和管理工具对象。工具将包含用于单击的事件侦听器,您可以在其中将状态更改为“按下”,依此类推。我可能会在工具栏中有一个类似于“ 0”的属性,并在单击工具时为此属性调用一个setter。有点喜欢
public function set currentTool(tool:Tool):void
{
// deselect current tool
_currentTool.gotoAndStop(1);
// select new tool
_currentTool = tool;
tool.gotoAndStop(2);
// other code
}