Dvostruki klik

Akcije u Flashu (onPress, onRelease…) se izvrsavaju nakon jednostrukog klika misem kao i npr. linkovi u html stranicama. Medutim ponekad nam je potreban dvostruki klik. Kako detektirati dvoklik? Jednostavno! Citajte dalje…

Text Link Ads

Download Source mozete skinuti OVDJE



Nacrtajte zeljeni oblik Vaseg buduceg dugmica. Kad ste ga nacrtali selektirajte ga i stisnite F8 (convert to symbol). Odaberite button (moze i Movie Clip ako vam je draze) i nazovite ga po volji (name). OK.
Neka dugmic bude i dalje selektiran. U properties panelu postavite (tj. upisite) Instance Name dugmic. Kliknite bilo gdje na scenu (ne na dugmic) i stisnite F9 (otvara ActionScript panel). Upisite sljedeci kod:

dvoklik_t=250;
klik=false;
dugmic.onPress = function() {

if (!klik) {
vrijeme_1 = getTimer();
_root.klik = true;
}

else {
dt=getTimer()-vrijeme_1;

if (dt<_root.dvoklik_t) {
trace(”DVOKLIK”);

} else {
trace(”NIJE DVOKLIK”);
vrijeme_1 = getTimer();
_root.klik = true;
}
}
}

To je sve. Testirajte napravljeno sa CTRL+Enter.

Slijedi objasnjenje….

  • dvoklik_t=250; - definiramo dozvoljeno vrijeme izmedu dva klika - postavite po volji (vrijeme je u milisekundama 1000ms = 1 sekunda)
  • klik=false; -postavljano klik varijablu na false - sluzi kao detektor dvoklika (true - false)
  • dugmic.onPress = function() { - ako kliknemo na dugmic izvrsava se kod koji slijedi
  • if (!klik) {
    vrijeme_1 = getTimer();
    _root.klik = true;
    } - ako je ovo prvi klik tada u varijablu vrijeme_1 spremamo vrijeme kada se taj klik desio. Takoder postavljamo klik na true kao indikator klika
  • else { - ako nije prvi klik tada se izvsava kod u nastvku
  • dt=getTimer()-vrijeme_1; - dt -> varijabla u koju spremamo razliku u vremenu izmedu prvog i drugog klika (oduzimamajuci vrijeme kada se desi drugi klik i vrijeme prvog klika)
  • if (dt<_root.dvoklik_t) { - ako je dt manji od zadanog vremena tada se radi o dvokliku i izvrsava se kod koji je unutar { } tj. trace(”DVOKLIK”);
  • } else { - ako je dt ipak veci od zadanog vremena (dvoklik_t)
  • trace(”NIJE DVOKLIK”); - u output ispisujemo NIJE DVOKLIK
  • vrijeme_1 = getTimer(); - postavljamo vrijeme prvog klika na sadasnje vrijeme , jer nije dvostruki klik pa zakljucujemo da je ovo prvi klik
  • _root.klik = true; - postavljamo da je jednostuki klik

Primjetite da se ovaj kod razlikuje od onog u sourceu samo za onaj dio koji se izvrsava ako je klik odnosno nije… Vase akcije ubacite upravo u taj dio odnosno tamo gdje su naredbe trace.


1 Star2 Stars3 Stars4 Stars5 Stars (3 votes, average: 4.33 out of 5)
Loading ... Loading …

Komentari

Verification Image

Unesite slova sa slike.