Entweder so etwas tun:
mySprite.addEventListener("mouseDown", mouseDownHandler);
stage.addEventListener("mouseUp", mouseUpHandler);
protected function mouseDownHandler (e:MouseEvent):void{
e.target.startDrag();
}
protected function mouseDownHandler (e:MouseEvent):void{
e.target.stopDrag();
}
Sie 2 Argumente an die Methode start passieren können, ist die erste ein boolean zum Zentrum zu sperren, der zweite ist ein Rechteck-Objekt für Boundary-Punkte.
Und für ein kontrolliertes Verhalten Sie so etwas wie dies stattdessen tun können:
mySprite.addEventListener("mouseDown",
mouseDownHandler);
stage.addEventListener("mouseUp", mouseUpHandler);
protected function mouseDownHandler (e:MouseEvent):void{
stage.addEventListener("mouseMove",
mouseMoveHandler);
}
protected function mouseDownHandler (e:MouseEvent):void{
stage.removeEventListener("mouseMove",
mouseMoveHandler);
}
protected function mouseMovehandler(e:MouseEvent):void{
mySprite.x=mouseX;
mySprite.y=mouseY;
}
(haben Sie den Code so nicht getestet könnte es einige kleine Syntax-Fehler oder etwas sein)
Können Sie erklären, wofür ist das? Es klingt, als würdest du etwas falsch machen. – zinovii
Ich schreibe einen Testcode, um die Benutzeroberfläche zu testen, ich muss den Indikator (ein Bild) auf eine Anzeigeleiste ziehen. –
Ich denke, es ist seltsam, dass Sprite hat startDrag() und stopDrag() -Methoden, aber kein Ereignis ausgelöst. Es wäre schön, zumindest DragStart- und DragComplete-Events für Sprite zu haben. – zinovii