Mi lehet a hiba az alábbi Flash Builder/Action Script programban? Argument count mismatch on Main/beolvas1 (). Expected 0, got 1.
A program annyit csinálna, hogy egy szerveren elhelyezett PHP-szkript kimenetét beolvassa, és ennek értékétől függetlenül kiír egy szöveget, és beállítja a háttérszínt.
Ez eddig működik is, csak jó lenne automatikusan 15 másodpercenként elvégezni. Megpróbáltam - példák alapján - egy timert összehozni, de a fentebb írt hibaüzenetet adja.
A forrás:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx=" [link]
xmlns:s="library://ns.adobe.com/flex/spark" applicationDPI="160"
applicationComplete="init(event)">
<fx:Script>
<![CDATA[
import flash.events.TimerEvent;
import flash.utils.Timer;
import mx.events.FlexEvent;
public var allapot:String;
public var eleres:URLLoader = new URLLoader();
public var t:Timer;
protected function init(event:FlexEvent):void
{
eleres.addEventListener(IOErrorEvent.IO_ERROR,khiba);
eleres.addEventListener(Event.COMPLETE,beolvas2);
beolvas1();
t = new Timer(15000);
t.addEventListener(TimerEvent.TIMER,beolvas1);
t.start();
}
public function beolvas1():void
{
var cim:URLRequest = new URLRequest("...ide jön a PHP-szkript elérési útja...");
eleres.load(cim);
}
public function beolvas2(e:Event):void
{
allapot = e.target.data;
if (allapot=="ok") {
setStyle('backgroundColor', 0xAAFFAA);
info.text = "Működik.";
}
if (allapot=="hiba") {
setStyle('backgroundColor', 0xFFAAAA);
info.text = "Nem működik.";
}
}
public function khiba(event:IOErrorEvent):void
{
allapot = "hiba";
}
]]>
</fx:Script>
<s:Label>
<s:y> 30 </s:y>
<s:horizontalCenter> 1 </s:horizontalCenter>
<s:text> Program </s:text>
</s:Label>
<s:TextInput id="info">
<s:y> 60 </s:y>
<s:horizontalCenter> 1 </s:horizontalCenter>
<s:text> </s:text>
</s:TextInput>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
</s:Application>
Kiírja neked: Argument count mismatch on Main/beolvas1 (). Expected 0, got 1.
Mi nem világos?
Ha egy függvényt eventlistenerbe teszel, akkor az átad neki plusz paraméterként egy event:TimerEvent objektumot.
Tehát a beolvas1():void helyett beolvas1(event:TimerEvent):void kell.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!