Antworten auf deine Fragen:
Neues Thema erstellen

Button-Fehler: Eine Aktion nur einmalig und die andere nicht

black-hat

Aktives Mitglied

Ein Hallo an alle die mit Flash umgehen können ? ich brauche eure Hilfe.

Folgendes:
Ich wollte mir einen Button mit Hilfe von Flash (Actionscrript 2.0) erstellen. Dieser Button soll folgendes machen:

Wenn ich mit dem Cursor auf den Button (Entweder Kugel oder Spieglung) gehe, soll sich die Kugel erheben und die Spieglung soll etwas nach unten gehen.

Es passiert aber folgendes: Wenn ich mit dem Cursor auf die Kugel gehe, dann erhebt sie sich und geht wieder zurück, wenn ich den Cursor wegziehe - so wie es sollte nur dummerweise nur EINMALIG-ZWEIMALIG! Heißt: wenn ich mit dem Cursor ein zweiten/o. dritten Mal auf die Kugel-Fläche gehe, passiert gar nichts. Jedoch im Bereich der Spieglung, funktioniert es, so oft ich will.

Hier sind die Screens zum Projekt:

Komplettscreen:


Funktion für die Spieglung Punk 1 (Zeitleiste: 1)


Funktion für die Kugel Punkt 1 (Zeitleiste: 1)


Funktion für die Spieglung Punk 2 (Zeitleiste: 15)


Funktion für die Kugel Punkt 2 (Zeitleiste: 15)


Funktion für die Spieglung Punk 3 (Zeitleiste: 30)


Funktion für die Kugel Punkt 3 (Zeitleiste: 30)


Ich weiß echt nicht woran es liegt!
(Falls jemand dafür das Projekt braucht, kann er mich gerne anschreiben.)

Zur Not: hier ist der Direkte Link zur swf-Datei:


Eine Frage kann ich jedoch so beantworten:
Alle Bilder haben die Movieclip-Funktion und haben jeweils den Instanzname ?kugel? und ?spieglung?.


Für jeden nützlichen Vorschlag, bin ich sehr dankbar!

Gruß, Larry
 

Jormungand

VonAllemEtwas

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Wozu brauchst du denn dass AS zweimal? Einmal für die Spiegelung und einmal für den Ball? Im Moment hast du zweimal die gleichen Scripte übereinanderliegen, so wie ich das sehe. Die behindern sich gegenseitig.

Sowohl Spiegelung, als auch Ball befinden sich in verschiedenen Ebenen in der gleichen Zeitleiste. Du könntest die gesamte Animation in einen Movieclip stopfen und diesen dann mit deinem Script belegen.
 

black-hat

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Wozu brauchst du denn dass AS zweimal? Einmal für die Spiegelung und einmal für den Ball? Im Moment hast du zweimal die gleichen Scripte übereinanderliegen, so wie ich das sehe. Die behindern sich gegenseitig.

Sowohl Spiegelung, als auch Ball befinden sich in verschiedenen Ebenen in der gleichen Zeitleiste. Du könntest die gesamte Animation in einen Movieclip stopfen und diesen dann mit deinem Script belegen.

Klingt einleuchtend :D
und wie mach ich das?
 

ernstl

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Viel zu umständlich.
Versuche mal folgendes:
1. erstelle ein MC mit deiner Animation
2. benennen den MC 'Button_MC' (Instanzname bei den Eigenschaften)
3. kehre zur Hauptzeitleiste zurück und schreibe ins erste Frame:
PHP:
this.Button_MC.stop();
this.Button_MC.onRollOver = function() {
    this.onEnterFrame = function() {
        this.nextFrame();
        if (this._currentframe == this._totalframes) {
            delete this.onEnterFrame;
        }
    };
};
this.Button_MC.onRollOut = function() {
    this.onEnterFrame = function() {
        this.prevFrame();
        if (this._currentframe == 1) {
            delete this.onEnterFrame;
        }
    };
};
 

campman

Nicht mehr ganz neu hier

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

yup currentframes hätt ich auch vorgeschlagen wenn ich schneller gewsen wär :lol:
 

black-hat

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

wenn ich nur wüsste, was das heißt.
ich hab versucht eure vorschläge umzusetzten.

anscheinend bin ich zu ungescheid dafür ><
 

ernstl

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

anscheinend bin ich zu ungescheid dafür ><
Sag´ doch sowas nicht!
Hast Du denn mal versucht, das Gesagte umzusetzen? Wenn ja, dann poste doch mal Deinen Versuch, damit man anhand dessen Dir zeigen kann, warum und weshalb -sollst ja auch was lernen :)
 

black-hat

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Sag´ doch sowas nicht!
Hast Du denn mal versucht, das Gesagte umzusetzen? Wenn ja, dann poste doch mal Deinen Versuch, damit man anhand dessen Dir zeigen kann, warum und weshalb -sollst ja auch was lernen :)

Das Blöde ist ja: ich weiß ja nicht einmal was ein MC ist, und somit konnte ich deinen Tipp noch nicht umsetzten.
Des weiteren weiß ich auch nicht, wie ich das umsetzten kann.

ich hab folgendes verstanden:
Irgend ein MC, dann instantname, Button_MC und ins ersten Feld der Zeitleiste, also denke ich bei 1.

Doch weiß ich nicht mal: soll ich das bei einem schlüsselbild machen? - also entweder Spieglung oder Kugel? oder Beide? Soll das bei den Schlüsselbilder eingesetzt werden oder soll dafür extra eine neue ebene genutzt werden?- und wie viel flexibilität schafft mir das. Weil, da kommt noch ein schöner schatten dazu (so ein dunkler unter der Kugel, der hat zwar keine Hover effekte, aber soll optisch dazu bringen es 'echter' darzustellen)..außerdem muss ich später auch irgendwie die Link-Funktion mit einbringen können, ohne das es zu Problemen kommt...:motz:<~ (nicht motz sondern eher: verzweifelt umherbrabbel :lol:) :(

Des weiteren, ist es mir nicht nur wichtig, dass es Funktioniert, sondern ich muss auch verstehen, was das alles zu bedeuten hat q.q
und davon bin ich noch sehr weit entfernt.:'(
 

ernstl

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Puh, das hört sich dann aber danach an, als ob Du lieber mit den anfangen solltest. Es gibt wirklich sehr viele Tutorials im Netz und auf der CD von Flash befinden sich auch Beispiele -bei CS4 bin ich mir aber nicht sicher, da ich CS4 nicht besitze -noch nicht ;)

Du solltest Dir vielleicht ein Buch oder die Videos von bietet Hilfen -nicht zuletzt wegen des Handbuches, das dem Programm ja bei liegt. (Auf der Adobe-Seite liegt es als PDF-Datei vor).

Warum ich das sage? Nun, es muss zumindest eine Kommunikationsgrundlage vorhanden sein, in der wir uns dann bewegen. Leider stehst Du völlig am Anfang und solltest wirklich erst die Grundlagen beginnen.

PS. Ein MC ist übrigens ein MovieClip.
 

black-hat

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Puh, das hört sich dann aber danach an, als ob Du lieber mit den anfangen solltest. Es gibt wirklich sehr viele Tutorials im Netz und auf der CD von Flash befinden sich auch Beispiele -bei CS4 bin ich mir aber nicht sicher, da ich CS4 nicht besitze -noch nicht ;)

Du solltest Dir vielleicht ein Buch oder die Videos von bietet Hilfen -nicht zuletzt wegen des Handbuches, das dem Programm ja bei liegt. (Auf der Adobe-Seite liegt es als PDF-Datei vor).

Warum ich das sage? Nun, es muss zumindest eine Kommunikationsgrundlage vorhanden sein, in der wir uns dann bewegen. Leider stehst Du völlig am Anfang und solltest wirklich erst die Grundlagen beginnen.

PS. Ein MC ist übrigens ein MovieClip.

jaha XD:D ;)
das hatte ich auch vor, aber es geht um ein Projekt, was am ende des Monats fertig sein soll. :(
eigentlich wollte mir ein Freund dabei helfen, nur findet er keine Zeit für die Realisierung... :'(
darum habe ich es auf eigener Faust Versucht und im Interner geforscht - und als ich so ein bisschen selbst probiert habe, habe ich nun gehofft hier schnell hilfe zu finden.
Klar werde ich, wenn das Projekt fertig ist, mich mit den Grundlagen von Flash beschäftigen... nur gerade ist es etwas von der Zeit her knapp :lol:
 

ernstl

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Klar werde ich, wenn das Projekt fertig ist, mich mit den Grundlagen von Flash beschäftigen... nur gerade ist es etwas von der Zeit her knapp :lol:
Das hört sich ja dann danach an, als ob Du das von jemanden lieber machen lässt, als dass Du den Termin verpasst.

Wie weit bist Du denn?
...und wenn Du von Projekt sprichst, wird es da mehr Flash-Elemente geben, die Dir Schwierigkeiten bereiten werden?
 

black-hat

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Das hört sich ja dann danach an, als ob Du das von jemanden lieber machen lässt, als dass Du den Termin verpasst.

Wie weit bist Du denn?
...und wenn Du von Projekt sprichst, wird es da mehr Flash-Elemente geben, die Dir Schwierigkeiten bereiten werden?

jain.

Es stimmt schon, dass ich den besagten Freund von mir gefragt habe, ob er mir nicht helfen könne, als ich ihn von meinen Ideen erzählt habe.
Als er mir die ersten Dinge erzählt hatte, war ich nur perplex. Also entschied ich mich ein Buch von der Bibliothek auszuleihen, um schneller und konkreter das alles machen zu können, was er mir sagte...
Hat dann auch gut geklappt, dachte ich.
Als ich jedoch nicht mit der Button-Konvertierung klar gekommen bin, hab ich es mir Actionscript probiert, und als ich dann gesehen habe, dass es wohl doch nicht so schnell geht wie ich es dachte, habe ich mich dann an das Forum gewendet.

Als du dann geschrieben hast, und ich es so halbwegs verstanden habe, habe ich dann folgendes versucht:

Die ganzen Aktionen habe ich gelöscht, dann habe ich die Pfadebenen mit den Normalen ebenen verschmolzen. Und da ich dachte, dass man wie in Photoshop mit Strg+ E auch in Flash die Ebenen verschmelzen kann, musste ich leider feststellen, dass es doch nicht geht.
(ich bezog mich auf folgenden Gedanken. es heißt: "erstelle ein MC mit deiner Animation" sprich: (ich hab das so verstanden) die Schlüsselbilder + das was sie machen sollen MÜSSEN auf einer Ebene sein...)

Als ich das nicht hinbekommen habe, habe ich mir gedacht "na gut... dann machst du halt den Hovereffekt nur auf die Kugel..." habe dann eine ebene wieder hinzugefügt, und habe nur die kugelbezüglichen Dinge dazugeschrieben (also wie kugel.onRollOut etc) nur passiert der Fehler da auch....

Es stimmt also schon, das ich (wenn ich das schroff ausdrücke) andere darum indirekt bitte mir das vorzumachen.
Aber ich versuche selbst auch das Problem mit dem Miniwissen was ich gerade habe, zu lösen.

Zur 2. Frage:
Momentan sind noch weitere Flash dinge geplant, aber die kommen später hinzu.
 

ernstl

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Das Gesagte von mir bleibt ja bestehen, weshalb ich mich an dieser Stelle mal wiederhole, jedoch werde ich mal einwenig Erläutern:

1. erstelle ein MC mit deiner Animation
2. benennen den MC 'Button_MC' (Instanzname bei den Eigenschaften)
3. kehre zur Hauptzeitleiste zurück und schreibe ins erste Frame:

PHP:
this.Button_MC.stop();
this.Button_MC.onRollOver = function() {
    this.onEnterFrame = function() {
        this.nextFrame();
        if (this._currentframe == this._totalframes) {
            delete this.onEnterFrame;
        }
    };
};
this.Button_MC.onRollOut = function() {
    this.onEnterFrame = function() {
        this.prevFrame();
        if (this._currentframe == 1) {
            delete this.onEnterFrame;
        }
    };
};
--------------------------------------------------------------

Öffne ein neues Dokument in Flash. Dieses bitte in AS2
Datei -> Neu -> Actionscript 2

1. erstelle ein MC mit deiner Animation, d.h. dass Du ein Objekt, in deinem Fall der Ball auf die Bühne ziehst/ Importierst -oder wie auch immer Du das Objekt auf die Bühne bekommen hast ;)

Anschließend klickst Du diesen Ball an und drückst F8.
alternativ: Modifizieren -> In Symbol konvertieren

In dem neuen Fenster schreibst Du nun einen Namen, z.B. 'Button_MC' (Name für die Bibliothek!) Wichtig in der kompletten FlashUmgebung ist, dass Du dir die Groß-/Kleinschreibung merkst, sonst erhälst Du Fehler.

Danach befinden wir uns wieder auf der Hauptzeitleiste und im ersten Frame.
Erstelle eine weitere Ebene und nenne diese Action, AS Script o.ä. In dieser werden wir später unser ActionScript lagern.

Anschließend Klicke doppelt auf den gerade erstellten MovieClip (MC). Du wirst sehen, dass sich das Bild der Zeitleiste ändert. Und hier siehst Du auch schon den Unterschied. Ein MC hat eine eigene Zeitleiste und kann unabhängig von der Hauptzeitleiste (HZL) Animationen abspielen.

Erstelle deine Animation, die später beim MouseOver abgespielt werden soll -aber nur die Animation hin, nicht die Animation zurück. Die Animation hin, ist gleichzeitig die Ani zurück -spart Resourcen!


2. benennen den MC 'Button_MC' (Instanzname bei den Eigenschaften)

Kehre anschließend zur Hauptzeitleiste zurück. Du findest ziemlich in der Mitte einen Balken, in dem steht 'Szene1'. Klicke darauf (im übrigen siehst Du hier die Adressierung innerhalb deines FlashFilmes, nur als kleine Randbemerkung)

Klicke deinen MC einmal an und benenne diesen in den Eigenschaften (Strg + F3). Du vergibst ihn damit einen sog. 'Instanznamen' und machst ihn anwählbar für unser ActionScript. Damit alles zusammenpasst musst Du ihn 'Button_MC' nennen.

3. kehre zur Hauptzeitleiste zurück und schreibe ins erste Frame:

PHP:
this.Button_MC.stop();
this.Button_MC.onRollOver = function() {
    this.onEnterFrame = function() {
        this.nextFrame();
        if (this._currentframe == this._totalframes) {
            delete this.onEnterFrame;
        }
    };
};
this.Button_MC.onRollOut = function() {
    this.onEnterFrame = function() {
        this.prevFrame();
        if (this._currentframe == 1) {
            delete this.onEnterFrame;
        }
    };
};
Das schreibst Du natürlich in das Frame, das wir erhalten haben, als wir die zusätzliche Ebene erstellt haben. Das AS-Fenster kannst Du einfach mit F9 öffnen.

4. Teste den Spaß strg + Enter

Ich denke, damit solltest Du klar kommen, wenn nicht, meld Dich einfach. Nächstes Mal kannst Du aber ruhig direkt fragen.
 

black-hat

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Das Gesagte von mir bleibt ja bestehen, weshalb ich mich an dieser Stelle mal wiederhole, jedoch werde ich mal einwenig Erläutern:

1. erstelle ein MC mit deiner Animation
2. benennen den MC 'Button_MC' (Instanzname bei den Eigenschaften)
3. kehre zur Hauptzeitleiste zurück und schreibe ins erste Frame:

PHP:
this.Button_MC.stop();
this.Button_MC.onRollOver = function() {
    this.onEnterFrame = function() {
        this.nextFrame();
        if (this._currentframe == this._totalframes) {
            delete this.onEnterFrame;
        }
    };
};
this.Button_MC.onRollOut = function() {
    this.onEnterFrame = function() {
        this.prevFrame();
        if (this._currentframe == 1) {
            delete this.onEnterFrame;
        }
    };
};
--------------------------------------------------------------

Öffne ein neues Dokument in Flash. Dieses bitte in AS2
Datei -> Neu -> Actionscript 2

1. erstelle ein MC mit deiner Animation, d.h. dass Du ein Objekt, in deinem Fall der Ball auf die Bühne ziehst/ Importierst -oder wie auch immer Du das Objekt auf die Bühne bekommen hast ;)

Anschließend klickst Du diesen Ball an und drückst F8.
alternativ: Modifizieren -> In Symbol konvertieren

In dem neuen Fenster schreibst Du nun einen Namen, z.B. 'Button_MC' (Name für die Bibliothek!) Wichtig in der kompletten FlashUmgebung ist, dass Du dir die Groß-/Kleinschreibung merkst, sonst erhälst Du Fehler.

Danach befinden wir uns wieder auf der Hauptzeitleiste und im ersten Frame.
Erstelle eine weitere Ebene und nenne diese Action, AS Script o.ä. In dieser werden wir später unser ActionScript lagern.

Anschließend Klicke doppelt auf den gerade erstellten MovieClip (MC). Du wirst sehen, dass sich das Bild der Zeitleiste ändert. Und hier siehst Du auch schon den Unterschied. Ein MC hat eine eigene Zeitleiste und kann unabhängig von der Hauptzeitleiste (HZL) Animationen abspielen.

Erstelle deine Animation, die später beim MouseOver abgespielt werden soll -aber nur die Animation hin, nicht die Animation zurück. Die Animation hin, ist gleichzeitig die Ani zurück -spart Resourcen!


2. benennen den MC 'Button_MC' (Instanzname bei den Eigenschaften)

Kehre anschließend zur Hauptzeitleiste zurück. Du findest ziemlich in der Mitte einen Balken, in dem steht 'Szene1'. Klicke darauf (im übrigen siehst Du hier die Adressierung innerhalb deines FlashFilmes, nur als kleine Randbemerkung)

Klicke deinen MC einmal an und benenne diesen in den Eigenschaften (Strg + F3). Du vergibst ihn damit einen sog. 'Instanznamen' und machst ihn anwählbar für unser ActionScript. Damit alles zusammenpasst musst Du ihn 'Button_MC' nennen.

3. kehre zur Hauptzeitleiste zurück und schreibe ins erste Frame:

PHP:
this.Button_MC.stop();
this.Button_MC.onRollOver = function() {
    this.onEnterFrame = function() {
        this.nextFrame();
        if (this._currentframe == this._totalframes) {
            delete this.onEnterFrame;
        }
    };
};
this.Button_MC.onRollOut = function() {
    this.onEnterFrame = function() {
        this.prevFrame();
        if (this._currentframe == 1) {
            delete this.onEnterFrame;
        }
    };
};
Das schreibst Du natürlich in das Frame, das wir erhalten haben, als wir die zusätzliche Ebene erstellt haben. Das AS-Fenster kannst Du einfach mit F9 öffnen.

4. Teste den Spaß strg + Enter

Ich denke, damit solltest Du klar kommen, wenn nicht, meld Dich einfach. Nächstes Mal kannst Du aber ruhig direkt fragen.


JAH ES KLAPPT!
WUNDERBAR! :danke::blumen:O:):daumenhoch: supa.
jetzt muss ich nur noch eines wissen...
Wie kriege ich den code:

Button_MC.onRelease = function () {
getURL ("LINK", "_blank");
}

einfüge... bei einer Testseite kam eine warnung...
 

ernstl

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

jetzt muss ich nur noch eines wissen...
Wie kriege ich den code:

Button_MC.onRelease = function () {
getURL ("LINK", "_blank");
}

einfüge... bei einer Testseite kam eine warnung...
Ich gehe mal von aus, dass Du den AS unterhalb des von mir gezeigten AS postiert hast und es bei deinem Test nicht "LINK" hieß, sondern eine richtige Adresse eingetragen wurde. Wenn dem so ist, dass solltest Du keine Probleme bekommen.

Sollten trotzdem Fehler auftreten, könnte ich mir vorstellen, dass Du etwas bei der Einbindung verkehrt gemacht hast. Binde Flashfilme mit ein und Du wirst keine Probleme mehr haben. Eine deutsche Anleitung findest Du

PS: Schreibe vor dem 'Button_MC' mal ein 'this.' (interne Adressierungvon Flash)
 

black-hat

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Ich gehe mal von aus, dass Du den AS unterhalb des von mir gezeigten AS postiert hast und es bei deinem Test nicht "LINK" hieß, sondern eine richtige Adresse eingetragen wurde. Wenn dem so ist, dass solltest Du keine Probleme bekommen.

Sollten trotzdem Fehler auftreten, könnte ich mir vorstellen, dass Du etwas bei der Einbindung verkehrt gemacht hast. Binde Flashfilme mit ein und Du wirst keine Probleme mehr haben. Eine deutsche Anleitung findest Du

PS: Schreibe vor dem 'Button_MC' mal ein 'this.' (interne Adressierungvon Flash)

Also ich denke, das alles richtig eingebunden habe...
Nur kommt so was:
 

ernstl

Aktives Mitglied

AW: Button-Fehler: Eine Aktion nur einmalig und die andere nicht

Ne, dieser Warnhinweiß ist schon normal.
Versuche den Spaß mal online und Du wirst sehen, dass alles ganz prima funktioniert.:)
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben