【问题标题】:ActionScript 3.0 Button Compile errorActionScript 3.0 按钮编译错误
【发布时间】:2013-04-28 21:33:39
【问题描述】:

我想通过 MySQL PHP 路由在 Flash 中创建一个登录数据库。我从一些教程中复制了大部分代码。我的登录基本上包含用户输入他们的电子邮件地址并选择密码,并且我有一个基本的组合框。

当我运行代码时收到此错误...

ReferenceError: Error #1069: Property data not found       fl.controls.Button and there is no default value.
    at phpRegister_fla::MainTimeline/btnHandler()

我已经调试了 Flash,但没有得到任何其他信息。

网上搜索后还是不明白是什么原因造成的。

我希望我的代码能帮助您查明我哪里出错了。道歉它有点长。 非常感谢任何帮助。

import flash.net.URLVariables;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.events.MouseEvent;
import flash.events.KeyboardEvent;
import flash.events.Event;
import flash.text.TextField;
import fl.data.DataProvider;
import fl.controls.Button;

btn_Submit.addEventListener(MouseEvent.CLICK, btnHandler);

//Validate form fields
function btnHandler(event:MouseEvent):void {

    status_Txt.text =  "" + event.target.data.systemResult;
    trace(event.target.data.systemResult);

    var phpVars:URLVariables = new URLVariables();

    var phpFileRequest:URLRequest = new URLRequest("phpFile");
    phpFileRequest.method = URLRequestMethod.POST;
    phpFileRequest.data = phpVars;

    phpVars.email = email.text;
    phpVars.ps_wd = ps_wd.text; 

    var phpLoader:URLLoader = new URLLoader();
    phpLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
}

textOneField.addEventListener(Event.CHANGE, changeHandler);

function changeHandler(event:Event):void {
    trace("data entered");
}

textTwoField.addEventListener(Event.CHANGE, changeData);

function changeData(event:Event):void {
    trace("data changed");
}

email.addEventListener(KeyboardEvent.KEY_UP, keyHandler);

ps_wd.addEventListener(KeyboardEvent.KEY_UP, keyEnter);


function keyHandler(event:KeyboardEvent):void {
    if(event.keyCode == Keyboard.ENTER)
        trace("keyboard was pressed");
}

function keyEnter(event:KeyboardEvent):void {
    if (event.keyCode == Keyboard.ENTER)
        trace("Enter button hit");
}

var persons:Array = new Array();
persons[0] = "Male";
persons[1] = "Female";

c_two.dataProvider = new DataProvider(persons);
c_two.addEventListener(Event.CHANGE, dataHandler);

function dataHandler(event:Event):void {
    trace(event.target.value);
}

【问题讨论】:

  • 我猜在 event.target 上找不到“数据”。

标签: php mysql actionscript-3 flash


【解决方案1】:

代码可能没有任何问题。而是您正在使用“标准闪存库”中不存在的组件,即 fl.controls.button。为了让您能够使用它,您需要添加到该组件的链接。

由于您没有提及如何编译代码,因此很难告诉您该怎么做。但是,您可能不需要 fl 按钮,但可以使用“SimpleButton”或“Movieclip”或其他东西来代替。

如果是 Flash: http://forums.adobe.com/message/4260710?tstart=0

类似问题: AS3 Error: '1172: Definition fl.controls:Button could not be found.'

更多信息: http://www.actionscript-flash-guru.com/blog/14-flcontrols-not-found-how-do-i-import-the-fl-package

【讨论】:

    【解决方案2】:

    在你的 btnHandler 函数中你有:

    ... event.target.data.systemResult ...

    其中 event.target 似乎是一个 fl.control.Button 对象。 这些对象没有“数据”属性。 我不知道你在 event.target.data.systemResult 中寻找什么?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-07
      • 2013-03-09
      • 2011-08-15
      • 2011-07-30
      • 1970-01-01
      • 2015-03-13
      • 1970-01-01
      相关资源
      最近更新 更多