MoveClip als Button?

firstplaya

Mitglied
Hallo

Ich habe Probiert eine Navigation aus lauter MoveClips zu machen.
Doch wie kann ich das Button verhalten auf einen MoveClip anwenden!
So das er seine Animation erst startet wen man darüber fährt,
und beim drücken einen anderen MC startet und in der aktiven position bleibt?

Gruss
 
Hi,

mit den Mausereignissen
  • onRollOver

  • onRollOut

  • onPress

  • onRelease

  • onReleaseOutside und

  • onDragOut
kannst Du einem MovieClip ein viel komplexeres Verhalten zuweisen, als einer Schaltfläche.

Beispielsweise kannst Du diese Ereignisse verwenden, um Dich auf der Zeitleiste des MovieClips hin und her zu bewegen.

Gruß
.
 
Hi,

Wen ich den Befehl gebe kommt bei mir ein Fehler!
Der sagt nur Schaltflächen kann man einen solchen Befehl zuweisen.

Verstehe das jetzt nicht ganz!

Gruss
 
Hi,

Hab das problem selber gefunden nun ein anderes.
Habe mal ein kleines fla beispiel gemacht.
Damit man das vor Augen hatt, es sollte eigentlich so sein das wen man über den Button bzw den MC fährt mit der maus die aktion durchläuft.
Und wenn man darauf drückt einen anderen MC startet.

Ist einfacher wenn man das vor Augen hatt, also ich Hab so meine probleme damit wäre froh um Hilfe.

Gruss
 
Hi,

Du solltest MovieClip-Mausereignisse in der Regel lieber auf der Zeitleiste des Buttons (dann eben "onPress" statt "on(press)" notieren.

Probier mal folgendes:
  • Lösche den Code, der auf allen Buttons liegt (auf den Instanzen)

  • Gib jedem Button in seinem ersten Frame folgenden Code:
Code:
stop();

this.onPress = function() { // Beim Klick:
	if (_currentframe != _totalframes) { // wenn ich nicht schon am Ende bin:
		play(); // abspielen!
		_parent.pressed(this); // .. und dem Menü mitteilen, dass ich gedrückt wurde
	}
}

function deActivate() { // Wieder zurück an den Anfang setzen
	gotoAndStop(1);
}
  • Gehe dann in den Menü-MovieClip und gib jedem Button einen Instanznamen (but1 bis but4)

  • Erstelle im Menü eine neue Ebene für ActionScript, und gib dort folgenden Code ein:
Code:
var buttons = new Array(but1, but2, but3, but4);

function pressed(obj) { // wird aufgerufen, wenn ein Button gedrückt wird.
	for (var i in buttons) {
		if (buttons[i] != obj) { // alle Buttons ausser dem geklickten ...
			buttons[i].deActivate(); // ... werden deaktiviert!
		}
	}
}

Im Anhang findest Du die modifizierte Version.

Gruß

P.S.: Es gibt hier die Möglichkeit, Beiträge zu editieren, also erstelle bitte keine 3 Postings hintereinander - danke!
.
 

Anhänge

Zurück