AS3错误:'1172:定义fl.controls:无法找到按钮.

Aye*_*xeM 4 class definition button actionscript-3

我正在尝试创建一个名为LinkBut​​ton的类,这是一个简单的类,它在点击时加载一个URL (我这样做是为了简化我的设计师向AS3的过渡).即使我导入按钮定义,AS文件也会出现编译错误:1046:找不到类型或者不是编译时常量:Button.1172:定义fl.controls:无法找到Button.我创建了一个简单的形状按钮,将其转换为'Button'类型的符号(F8).在我的FLA文件中,我有这个代码:

import AS3classes.mouse.LinkButton;
var link1:LinkButton = new LinkButton(testLink, "http://www.example.com");
Run Code Online (Sandbox Code Playgroud)

简单吧?在我的AS文件中,我导入按钮定义,声明构造函数和'linkTo'行为.这是我在AS文件中的代码:

package AS3classes.mouse
{
 import fl.controls.Button;
 import flash.events.*;
    import flash.net.*;

 public class LinkButton 
 {
  private var _pageURL:String;
  private var _button:Button;

  public function LinkButton(button, pageURL) : void
  {
   _button = button;
   _pageURL = pageURL;
   _button.addEventListener(MouseEvent.MOUSE_UP, LinkTo);
  }

  private function LinkTo(e:Event) : void
  {
   var request:URLRequest = new URLRequest(_pageURL);
  }
 }
}
Run Code Online (Sandbox Code Playgroud)

当我谷歌这个,我看到人们收到此错误,因为他们的库中没有按钮.我有一个从简单形状创建的按钮.我输入正确的定义吗?使用相同的方法在不同的脚本中导入movieClip定义没有问题.我不明白这个区别,我很确定我不是傻瓜.

sbe*_*rry 6

您使用了错误的按钮类型.正如你所描述的那样,你想要的

flash.display.SimpleButton
Run Code Online (Sandbox Code Playgroud)

fl.controls.Button是一个Button组件,而不是库中定义的按钮.合理?尝试导入flash.display.SimpleButton并将_button设置为SimpleButton.


小智 6

您需要转到"组件"窗口并将"按钮"拖到"库"窗口中.

要使用该组件,只需使用该import fl.controls.Button;指令导入它即可.您现在可以使用带有标签的"按钮"等.