Home > Uncategorized > MouseEvent.DOUBLE_CLICK

MouseEvent.DOUBLE_CLICK

February 12th, 2009

Situație stupidă: player-ul trimite primul event de MouseEvent.CLICK, deabia după aia al doilea event de MouseEvent.CLICK se transformă în MouseEvent.DOUBLE_CLICK. Asta înseamnă că dacă am o function1 pe CLICK și function2 pe DOUBLE_CLICK, la orice dublu-click o să mi se declanșeze function1, după care function2. Am căutat pe tot netul în sus și în jos și nu văd nici o rezolvare decât să nu mai tratez MouseEvent.DOUBLE_CLICK, ci să o ard cu timere și/sau semafoare și doar cu eventuri de CLICK..

evilpenguin Uncategorized , , ,

  1. February 19th, 2009 at 17:42 | #1

    Nu ți se pare normal că dacă faci dbl click, mai întâi să se execute eventul OnClick?

    Din ceea ce spui tu, înțeleg care este problema, dar nu pricep de ce ar trebui să fie asta o problemă. Mi se pare mai degrabă o chestie naturală, așa ar trebui să decurgă lucrurile.

    Și în Windows Explorer de exemplu, dacă faci dbl-click pe un fișier mai întâi acesta este selectat (comportamentul de single click) și abia apoi acesta se execută.

    Ce anume vrei să realizezi de trebuie să ai acțiune separată în funcție de mouse event?

    Încă o chestie care scârțâie. Webul este single-click interaction, dacă dai click pe un link te duce pe altă pagină (nu trebuie să faci dublu click), de ce vrei dublu click în flash-ul tău? :)

  2. February 19th, 2009 at 17:45 | #2

    Single click – pause/resume
    Dublu click – full screen

    Dar am renuntat la pause/resume, le-am pus pe tasta space, doar.

  3. April 24th, 2009 at 15:00 | #3

    Ok, mă las bătut, care e parola la postul de deasupra? :D

  4. April 24th, 2009 at 16:19 | #4

    Sorry, can’t say. Care ar fi logica unui post protejat daca spun parola public? Oricum, e neinteresant, poti sa stai linistit. Sunt doar niste teste cu un embed de Flash.

  5. August 6th, 2009 at 15:49 | #5

    Eu tot nu am inteles. In mod logic ar trebui sa am:

    mc1.addEventListener(MouseEvent.DOUBLE_CLICK, functie1);
    mc2.addEventListener(MouseEvent.CLICK, functie2);

    In cazul asta nu prea vad cum sa se incurce una cu alta!?

  6. evilpenguin
    August 6th, 2009 at 15:58 | #6

    Nu, eu aveam

    mc1.addEventListener(MouseEvent.DOUBLE_CLICK, functie1);
    mc1.addEventListener(MouseEvent.CLICK, functie2);

    Si vroiam să le tratez pe amândouă. Pentru vă vroiam ca pe o zonă, să fac click și să facă un lucru, dar dacă fac dublu click, să facă alt lucru.

  7. August 7th, 2009 at 12:38 | #7

    Pai la modul asta nu merge nici ROLL_OVER cu CLICK, si probabil si alte combinatii de aces gen.
    Daca la ROLL_OVER am un eveniment care imi face ceva (ascunde) mc1, nu mai am sanse sa dau CLICK.

    Altfel, nu stiu, probabil ar trebui sa pui o conditie de genul:
    if(ceva) {
    mc1.addEventListener(MouseEvent.DOUBLE_CLICK, functie1);
    } else {
    mc1.addEventListener(MouseEvent.CLICK, functie2);
    }

    Depinde ce ai tu pe acolo. Dar intr-adevar este un pic derutanta chestia.

  1. No trackbacks yet.