• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-01-2010, 16:53   #1 (permalink)
1up
Neuer User
 
Benutzerbild von 1up
 
Registriert seit: Dec 2008
Beiträge: 10
Question AS3 Maskierung mit drag&drop

Hallo Flash Freunde, ich habe folgendes Problem:

Ein Movieclip "maske_mc" soll einen Movieclip "bild_mc" maskieren, damit das Bild darunter angezeigt wird. Dabei soll der runde Masken-Movieclip "maske_mc" draggable sein.
Soweit klappts auch, jetzt möchte ich aber dem runden Masken-Movieclip "maske_mc" noch einen sichtbaren Rahmen "Rahmen_mc" verpassen, in meinem Fall ein PNG. Der Rahmen wird aber nicht während gedragged wird automatisch mit der Maske nachgezogen, sondern immer nur nach erneutem klick auf die Maske "maske_mc":
Wie kann ich den "Rahmen_mc" dazu bringen, sich synchron zur Maske zu bewegen während gedragged wird?
Vielen Dank für eure Tipps!

Code:
// runder Movieclip wird als Maske dem Bild zugewiesen
bild_mc.mask = maske_mc;
bild_mc.buttonMode=true;
bild_mc.addEventListener(MouseEvent.MOUSE_DOWN, onDOWN);
bild_mc.addEventListener(MouseEvent.MOUSE_UP, onUp);

function onDOWN(e:MouseEvent):void{
	maske_mc.startDrag();
	//Versuch, die Position der Maske mit dem Rahmen-PNG zu synchronisieren
	this.Rahmen_mc.x = maske_mc.x;
	this.Rahmen_mc.y = maske_mc.y;
}

function onUp(e:MouseEvent):void{
	maske_mc.stopDrag();
}
1up ist offline   Mit Zitat antworten
Alt 21-01-2010, 20:44   #2 (permalink)
Euer Nuser
 
Benutzerbild von ~pyropete~
 
Registriert seit: Apr 2004
Ort: Sand-City
Beiträge: 3.482
Code:
function onDOWN(e:MouseEvent):void{
	this.Rahmen_mc.x = maske_mc.x;
	this.Rahmen_mc.y = maske_mc.y;
}
this bezieht sich hier auf den Scope innerhalb der Funktion, und da existiert der
MovieClip aber nicht.

Du musst also den Pfad anpassen:

Code:
function onDOWN(e:MouseEvent):void{
	 _root.Rahmen_mc.x = maske_mc.x;
	 _root.Rahmen_mc.y = maske_mc.y;
}
Schmeiß das this davor weg setz den korrekten Pfad zum Rahmen_mc dahin.
~pyropete~ ist offline   Mit Zitat antworten
Alt 22-01-2010, 08:32   #3 (permalink)
1up
Neuer User
 
Benutzerbild von 1up
 
Registriert seit: Dec 2008
Beiträge: 10
Danke für deine Antwort - ist _root nicht aus AS3 rausgeflogen? So gibts nen Syntaxfehler. Wie beschrieben scheint der Pfad aber zu stimmen - bei klick auf "maske_mc" zieht Flash den "Rahmen_mc" 1x nach, aktualisiert diesen aber nicht während mouse_down.
Die Lösung des Problems: Ich hatte das falsche Ereignis bzw. habe noch einen EventListener zur neuen funktion onOver hinuzgefügt:
PHP-Code:
bild_mc.addEventListener(MouseEvent.MOUSE_MOVEonOVER);

function 
onOVER(e:MouseEvent):void{
    
//Mouse_Move synchronisiert die Position der Maske mit dem Rahmen-PNG
     
Rahmen_mc.maske_mc.x;
     
Rahmen_mc.maske_mc.y;     

Zusammen mit den alten drag Funktionen
PHP-Code:
function onDOWN(e:MouseEvent):void{
    
maske_mc.startDrag();
}
function 
onUp(e:MouseEvent):void{
    
maske_mc.stopDrag();

klappts jetzt! Danke für die Hilfe!
1up ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
as3, dragable, maske, maskierung, startdrag

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Drag and Drop cytrics ActionScript 3 11 27-01-2008 18:50
Drag & Drop: Drop nicht im .swf schmidtpublic_m ActionScript 1 4 14-07-2005 11:24
Drag and Drop durch verschiedene MCs leider nur Press Drag & press Drop MF_ ActionScript 1 5 12-07-2004 12:11
Drop Target Problem / Drag&Drop bewerber2 Flash 4 und Flash 5 2 05-01-2004 17:59
Drag and Drop Wolfclaw1982 Flash 4 und Flash 5 6 16-12-2001 18:52


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:11 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele