2012-03-25 20 views
-1

ich wollte nur wissen, ob es möglich ist, in Maus-Ereignisse zu prüfen, ob das Objekt gegriffen wird oder nicht in Action Script.Prüfung, wenn das Objekt packt

Zum Beispiel: youtube-Video-Player auch in Flash gebaut wird. und wenn wir die Spur greifen, bleibt sie einfach beim Mauszeiger oder wenn wir sie freigeben. es hört auf, wo auch immer wir es verlassen haben.

+0

Fragen Sie, wie man Dinge mit der Maus zieht? – grapefrukt

+1

Nein, der Titel der Frage ist, was gefragt wird. –

+2

Sie können Klicks erkennen und erkennen, was angeklickt wurde. "Grabbing" ist nichts in ActionScript, es sei denn, Sie implementieren es selbst. – grapefrukt

Antwort

0
// define lock on y-axis 
var LOCKY:Number = target.y; 

// MouseEvent.MOUSE_MOVE 
stage.addEventListener(MouseEvent.MOUSE_MOVE, _mouseMove); 
function _mouseMove(e:MouseEvent):void 
{ 
    if(target.y != LOCKY) target.y = LOCKY; 
} 

// dragging 
target.addEventListener(MouseEvent.MOUSE_DOWN, _mouseDown); 
function _mouseDown(e:MouseEvent):void 
{ 
    target.startDrag(); 
    target.addEventListener(MouseEvent.MOUSE_UP, _mouseUp); 
} 

// dropping 
function _mouseUp(e:MouseEvent):void 
{ 
    target.stopDrag(); 
    target.removeEventListener(MouseEvent.MOUSE_UP, _mouseUp); 
} 

direkt von hier genommen: AS3 How to startdrag only on x-axis?

+0

ist das Ziel in dem Code der pointor ist? –

+0

Es kann ein beliebiges Objekt oder ein Movieclip sein, der gezogen werden soll. – loxxy

+0

ah, ok thx..ich habe die Antwort bekommen. –

0

Es gibt keinen Weg, um zu bestimmen, ob ein Objekt nach dem start gezogen wird() wird auf sie aufgerufen wurde. Sie müssten einen booleschen Wert festlegen, der verfolgt, wenn Sie mit dem Ziehen begonnen haben.

Persönlich mag ich nicht start/stopdrag und so verwende ich es nicht. Aber wenn Sie anfangen, kann startDrag/stopDrag funktionieren. Ich nehme an, dass Youtubes Player diese Funktion nicht nutzt. Ich werde meine Methode hier zu einem späteren Zeitpunkt veröffentlichen, wenn ich darauf zugreifen kann.