Autor Zpráva
MichMond
Profil
Ahojte, začal jse mse učit ActionScrip3. Pokusil jsem se udělat event a funkci která proběhne když se klikne na tlačítko "but" mám to zde:
var jo="Funguje to"
but.addEventListener(MouseEvent.CLICK,funkce)
function funkce(){
	trace(jo)
}

Když ale kliknu na tlačítko "but" tak mi to napíše hlášku:
ArgumentError: Error #1063: Argument count mismatch on Untitled_fla::MainTimeline/funkce(). Expected 0, got 1.

Je to ale ve vístupu Onput nikoli v Compilate Error. Určitě za tím bude nějco moc primitivního, tak mě kdyžtak omluvte ale já si s tím opravdu nevím rady a tutoriálů na AS3 jsem zase tolik nenašel... Děkuji za rady.
embee
Profil
napis misto

function funkce(){
trace(jo)
}

function funkce(e:MouseEvent):void{
trace(jo)
}

Mas to napasne v tom erroru - Argument count mismatch on Untitled_fla::MainTimeline/funkce(). = nesedi ti pocet arguemntu. Z informace Expected 0, got 1 vidis, ze funkce prijima jeden argument, ale neni tak definovana (zadny neocekava). Takze reseni je nasnade :)
Johnik
Profil
Ale úplně správně je to takto:

var jo:String="Funguje to";

but.addEventListener(MouseEvent.CLICK, funkce);

function funkce(e:Event):void//nebo e:MouseEvent
{
    trace(jo);
}


A dávej středníky za každý řádek! Je to líp čitelný pro lidi i pro překladač a hlavně dle syntaxe jazyka.

Dále bys měl striktně typovat proměnné a funkce, už to není jak v AS2, kde jsi z Number udělal String, pak jsi potřeboval Boolean... Teď to musíš přetypovávat. Když nevíš jaký typ proměnné to má být, tak použij var neco:* = "neco";
Doporučuji pročíst si Dokumentaci AS3 a striktně se držet pravidel.

Něco málo ze základů najdeš tady: www.flash.snekin.net (už mám připravené další články).
MichMond
Profil
Jojo díky, jsem právě zvilkí na AS dva a proto moc typování proměnné nepoužívám. Teď už to funguje... tak Díky embee a Johnik.
embee
Profil
MichMond
ja pouzival typovani i v as2, je to besser :)
MichMond
Profil
ja pouzival typovani i v as2, je to besser :)
Já jsem tam typování používal jen když to bylo opravdu pořeba... Například u čísla (Number). Ale hlavně jsem to používal když jsem chtěl třeba z číselné proměnné udělat pravdu nebo nepravdu...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: