Pentru a crea link-uri in ActionScript 3 se foloseste clasa URLRequest, cu sintaxa: var nume_var:URLRequest = new URLRequest("URL");
Dupa ce e creat astfel obiectul cu link-ul (adaugat la parametru "URL"), acesta poate fi aplicat elementelor din scena (la numele de instanta a lor) printr-un detector de evenemente inregistrat cu addEventListener(). De exemplu, daca link-ul trebuie accesat cand se apasa click cu mouse-ul, se foloseste eveniment-ul MouseEvent.CLICK. In functia apelata de acest eveniment se aplica metoda navigateToURL() care preia ca argument variabila definita cu "URLRequest".
Iata printr-un exemplu cum se face:
1. Mai intai se creaza un buton in Scena, la care se adauga un nume de instanta.
- De ex., desenati in scena un oval (cu "Oval Tool") apoi transformati-l in Symbol Button (de la Modify -> Convert to Symbol, iar la Type alegeti Button). In panoul Properties adaugati-i numele de instanta buton_mp, dupa cum se vede in imaginea urmatoare (acest nume e folosit in ActionScript pt. a face referire la acest buton).
2. Click-dreapta pe Cadru 1 din Timeline, alegeti Actions, iar in panoul pt. cod ActionScript adaugati urmatorul script:
// Definire obiect cu link
var link:URLRequest = new URLRequest('https://marplo.net');
// Inregistrare eveniment MouseEvent.CLICK la instanta "buton_mp" (din Scena)
buton_mp.addEventListener(MouseEvent.CLICK, onClick);
// Functia onClick(), apelata de eveniment
function onClick(evt:MouseEvent):void
{
// Metoda care deschide link-ul specificat in variabila "link"
navigateToURL(link);
}
- Vedeti explicatiile din cod. 3. Daca apasati "Ctrl+Enter" se deschide o prezentare Flash ca cea de mai jos.
Cand se apasa pe buton, e activat evenimentul "MouseEvent.CLICK", acesta apeleaza functia "onClick()" care deschide link-ul prin metoda "navigateToURL()".
- La metoda "navigateToURL()" se poate adauga si echivalentul atributului "target" din HTML. Ex.: navigateToURL(link, '_blank');
- Elementul din Scena la care se adauga link-ul poate fi orice tip de Symbol (Movie Clip, Graphic), important este numele de instanta.
Daca obiectul din scena nu e de tip Button, pentru ca mouse-ul sa capete aspectul de manuta cand e deasupra lui (specific pt. link), se foloseste in ActionScript expresia: nume_instanta.buttonMode = true;
• Se pot aplica si adrese de link mai complexe, de forma https://marplo.net/cugetari.php?pm=apa#8%, dar in acest caz trebuie mai intai codificate pt. URL, cu encodeURI, precum in acest cod:
var url:String = 'https://marplo.net/cugetari.php?pm=apa#8%';
var url_enc:String = encodeURI(url);
var link:URLRequest = new URLRequest(url_enc);
- Fisierul FLA cu acest exemplu poate fi descarcat de la: Tutorial Creare link cu ActionScript 3.