PDA

Volledige versie bekijken : Tips om dingen te vinden in de flash handleiding.


Jordy
%Europe/Berlin %821 %2005, 20:42
Soms ben ik wel eens op zoek naar een property oid. Ik weet dan niet of deze bestaat, en weet ook niet waarop ik moet zoeken.
voorbeeldje:

Ik ben voor mitch even bezig met een mailform, maar nu moet er in een tekstveld een "@" staan voordat ie verzonden mag worden. Ik weet alleen de property niet die ik moet hebben, nu is het dus ook lastig om hiernaar op zoek te gaan :).

Vraag 1: Welke property is dit.
Vraag 2: Hoe kan ik in de toekomst zulke dingen wel vinden

kH_
%Europe/Berlin %839 %2005, 21:09
Hierbij heb ik direct even van de gelegenheid gebruik gemaakt om een validatie routinetje voor je te maken (ben je direct klaar :)). Als je dat niet wilt, dan zeg ik je gewoon...de functie heet 'indexOf("string_of_karakter_die_je_zoekt")'. Deze functie geeft een waarde kleiner dan 0 terug, als het(de) teken(reeks) niet gevonden is en anders geeft het de plaats weer waar het(de) teken(reeks) begint in de String.

Bijvoorbeeld:

var strTest:String="Witte bonen in tomaten saus";
trace(strTest.indexOf("bonen"));

Nu zal de waarde '6' worden weergegeven in de debug output. Ah...ik hoor je al klagen...6?? Maar "bonen" begint toch op positie 7?? Nee, je begint te tellen bij 0 (zero-indexing heet dat). Dus, de "W" begint op positie 0, de "i" op positie 1 etc.

Hierbij de validatie routine (heb em een beetje getest, dus probeer em maar uit :)):
//Email validatie door kH (07-07-2005)
checkEmail=function(strEmail:String):Boolean
{
var tokens:Array;

var index:Number=0;

//Zoek het @ teken
index=strEmail.indexOf("@");

/*
Is het @ teken niet gevonden, of is het gevonden op een plaats, waardoor
het email adres nooit geldig kan zijn (er past geen x.x meer achter) return
dan false
*/
if(index<0 || (index+1)>(strEmail.length-1-1-1))return false;

//Zoek tweede instantie van @ teken
index=strEmail.indexOf("@",index+1);

/*
Is het teken gevonden? Ongeldig email adres, aangezien de @ maar eenmaal
mag voorkomen.
*/
if(index>=0)return false;

//Hetzelfde concept passen we toe voor het . teken :)
index=strEmail.indexOf(".");
if(index<0 || (index+1)>(strEmail.length-1))return false;

index=strEmail.indexOf(".",index+1);
if(index>=0)return false;

/*
Splits het email adres op in maximaal twee afzonderlijke onderdelen
De separator is het '@' teken, dus als het goed is krijg je als resultaat
van 'flappie@hotmail.com' een Array terug met de volgende Strings:

"flappie"
"hotmail.com"
*/
tokens=strEmail.split("@",2);

//Als er niets aan de linkerkant of rechterkant staan, return direct false
if(tokens.length!=2)
{
return false;
}

//Deel nu het rechterdeel op (hotmail.com wordt "hotmail" en "com")
tokens[1]=split(".",2);

//Idem als hierboven
if(tokens.length!=2)
{
return false;
}
else
{
return true;
}
}

var strEmail:String="flappie@hotmail.com";
trace("Geldigheid van email adres '"+strEmail+"' = "+checkEmail(strEmail));

Veel plezier dr mee!

Voor ik het vergeet. Als je niet op dit soort functies kunt komen: there is a thing called Help in Flash ;)

Jordy
%Europe/Berlin %850 %2005, 21:25
tnx KH_ :).

Even een reactie op je laatste zin,
Ik heb in mn post gevraagd hoe ik zoiets kan opzoeken in de flash help ;)

Dauntless
%Europe/Berlin %852 %2005, 21:27
Je weet dat dat iets te maken zal hebben met de String class (Je wilt immers een string doorzoeken). Zoek in flash help naar 'String class'. Daar staat een mooi overzicht met alle properties en methods + beschrijving. Ga dan gewoon het lijstje af en kijk of er iets interessants tussenstaat.

In dit geval dus:
String.indexOf() -> Returns the position of the first occurrence of a specified substring.

Roenes
%Europe/Berlin %475 %2005, 12:24
Je moet idd nadenken op de manier die dauntless meld. Je moet een methode/property ergens voor hebben. Dan moet je gaan nadenken waarbij die prop/methode zou horen. In dit geval is dat String dus zoek je die op in de AS-ref en dan zul je vinden wat je zoekt.

Deze methode kun je bij alles aanhouden en zeker in flash omdat de help heel goed is :)

Dauntless
%Europe/Berlin %479 %2005, 12:30
Deze methode kun je bij alles aanhouden en zeker in flash omdat de help heel goed is :)
Idd.. Vergelijk maar eens met die javadocs :eek: man, daar kan ik echt niet aan uit :D (Jij waarschijnlijk wel, Roenes? :p)

TjOeNeR
%Europe/Berlin %479 %2005, 12:30
http://weblogs.macromedia.com/mesh/archives/2004/04/flash_resource.cfm

Flash resource manager, vreed handig tooltje, is lekker overzichtelijk en staat al die panelen in Flash niet in de weg...

Roenes
%Europe/Berlin %481 %2005, 12:33
Idd.. Vergelijk maar eens met die javadocs :eek: man, daar kan ik echt niet aan uit :D (Jij waarschijnlijk wel, Roenes? :p)javadocs zijn alleen overzichtelijk als je weet in welke package je moet zoeken. Maar als je een bepaalde class hebt die je moet opzoeken want je moet iets over een methode weten maar je hebt geen flauw idee in welke package die zit dan is het echt waardeloos!

Dus geef mij maar de help van flash en niet die javadocs.. :eek:

Maar even offtopic: ik wist niet dat jij met java bezig was? :)