我刚刚开始了一个关于Flash和ActionScript 3.0的在线课程,我一直遇到鼠标事件的麻烦,尤其是CLICK
课程。
所以我正在尝试创建一个基本的除法计算器,但我似乎无法通过按钮理解我的错误。所以这是不起作用的代码:
public function U1A4_DivEtMod() {
btnSoumettre.addEventListener(MouseEvent.CLICK, divise);
}
private function divise(event:MouseEvent):void {
monFormat.font = "Arial";
monFormat.size = 20;
monFormat.bold = true;
monFormat.color = 0xFFFFFF;
monMessage.x = 50;
monMessage.y = 300;
monMessage.autoSize = TextFieldAutoSize.LEFT;
monMessage.border = true;
monMessage.defaultTextFormat = monFormat;
var nmb1:int;
var nmb2:int;
var repDiv1:int;
var repDiv2:int;
var repMod1:int;
var repMod2:int;
var nouvMessage:String;
nmb1=int(entier1.text);
nmb2=int(entier2.text);
repDiv1 = nmb1 / nmb2;
repDiv2 = nmb2 / nmb1;
repMod1 = nmb1 % nmb2;
repMod2 = nmb2 % nmb1;
nouvMessage = (
nmb1 + " / " + nmb2 + " = " + repDiv1 + "\n" +
nmb2 + " / " + nmb1 + " = " + repDiv2 + "\n" +
nmb1 + " % " + nmb2 + " = " + repMod1 + "\n" +
nmb2 + " % " + nmb1 + " = " + repMod2 );
monMessage.text = nouvMessage;
addChild(monMessage);
}
我发现当我用btnSoumettre
替换this
时我的代码有效,但我可以在应用程序的任何位置点击。我试图让该方法仅在用户点击按钮时才起作用。
这是Flash给我的错误:
1061:AppelàlaméthodeaddEventListenerpeut-êtrenonéfinie,vialaréférencedetype static Class。
所以我的版本是法语的,所以你们可能不理解,但它基本上说方法addEventListener
没有定义静态类引用。
非常感谢你的帮助!