per Mausklick unloadMovie

grafixxer

Grünschnabel
Hi,

ich hab mal wieder ein Problem bzw. keine Idee, wie ich die Sache angehen kann. Also, ich habe in meinem Hauptfilm (film0.swf) eine Schaltfläche (btn_1) mit der ich per Mausklick die Box (film1.swf) hereinlade.

flash_mouseevent.gif

PHP:
btn_1.onPress = function() {  
		_root.createEmptyMovieClip("box", 1);  
		box._x = 250; 
		box._y = 250;  
		loadMovie("film1.swf", box); 
	}

Nun möchte ich, dass bei einem Mausklick außerhalb der box (irgendwo), der film1.swf per unloadMovie wieder entfernt wird. Hat jemand eine Idee, wie ich das anfangen kann? Ich hatte überlegt, ob man es über eine onClipEvent-Prozedur lösen könnte. Allerdings habe ich keinen Schimmer, wie ich definieren kann, ob sich der Mauszeiger auf oder außerhalb der box befindet.
 
Hi,

du könntest unter der Box eine etwas größere transparente Fläche legen und auf dieser dann ein weiteren event für diesen mc auslösen. Der Funktionsaufruf könnte dir dann die Box aus dem Film entlanden.

Ansonsten kann du es auch mit einem onMouseDown Event probieren:

HTML:
_root.onMouseDown = function() {
	_root.swf1.swf2.unloadMovie();
};

Das wird aber bei jedem mouseklick ausgelöst, deshalb ist es auch nicht so wirklich elegant.
Dies ist so eine Sache die mit dem neuen EventHandling in AS3 wesentlich besser ist.
 
Hi Denniz,

bin gerade aus dem Urlaub zurück und habe mal Deine Ideen aufgegriffen und muß sagen, dass ich den onMouseDown Event ganz gut finde. Wobei die Sache mit der transparenten Fläche auch nicht schlecht ist, allerdings müsste der film1.swf genau so groß sein wie der film0.swf. In meinem Fallbeispiel ist der film1.swf wirklich nur so groß wie die box.

AS3 ist für mich jetzt noch kein Thema, da ich nur eine Flash 8 Lizenz habe.

Also noch mal vielen Dank für Deine Hilfe.

Vielleicht noch eine Frage in anderer Hinsicht. Kannst Du mir vielleicht ein Grundlagen-Tutorial zum programmieren lernen in AS2 empfehlen. Im Moment ist mein AS2-Wissen eher ein Stückwerk, dessen Umstand ich gerne ändern würde. Das Tutorial müsste allerdings auch noch auf deutsch sein, da meine Englisch-Kenntnisse eher bescheiden sind.

Schöne Grüße
 
Hi,

Wobei die Sache mit der transparenten Fläche auch nicht schlecht ist, allerdings müsste der film1.swf genau so groß sein wie der film0.swf.

warum? Du könntest die transparente Fläche doch komplett über den Bildschirm skalieren und eine Tiefenenbene höher dann deine Box (film1) in einem weiteren MC laden. Jeder Mausklick außerhalb der Box wird dann von der Fläche abgenommen.

Vielleicht noch eine Frage in anderer Hinsicht. Kannst Du mir vielleicht ein Grundlagen-Tutorial zum programmieren lernen in AS2 empfehlen. Im Moment ist mein AS2-Wissen eher ein Stückwerk, dessen Umstand ich gerne ändern würde. Das Tutorial müsste allerdings auch noch auf deutsch sein, da meine Englisch-Kenntnisse eher bescheiden sind.

Ein Grundlagen Tutorial hab ich jetzt nicht parat aber ich kann dir die Flash Bücher von Matthias Kannengießer empfehlen, zb dies und dies hier. Die sind auf Deutsch und es wird alles wesentliche (für die ältere Flash Version) darin erklärt.
 
Zurück