Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-02-2004, 19:28   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Frreiburg
Beiträge: 11
onRelease-funktionen global verwenden

Hallo Leute,

ich habe in nem Film zwei MC mit einigen buttons drin, die zwar immer die gleiche funktion haben, aber in mehreren Bildern in diesen MCs an verschiedenen stellen auftauchen...jetzt würde ich gerne in meinem hauptfilm einmal dieses onRelease für jeden button definieren, und nicht in den MCs in jedem Key, in dem der button auftaucht. die buttons haben immer die gleichen instanznamen (button1, button12 buttton13 usw.) wie mach ich das ? mit einer globalen funktion, die ich dann aus jedem der keyframes aufrufen kann? und wie kann ich den instanznamen automatisch erkennen und an die funktion übergeben ?

danke für eure hilfe,
gruß mark.
mokkinger ist offline   Mit Zitat antworten
Alt 28-02-2004, 19:35   #2 (permalink)
~~~~~~~~~~~~
 
Benutzerbild von _geo_
 
Registriert seit: May 2002
Ort: AUSTRIA (OÖ)
Beiträge: 3.298
wenn der button imm die gleiche instanz ist dann schreib doch einfach in die "vorlage" das mc/button selber:

this.onRelease=function(){trace("this._name");}

due funktion rein. ansonsten müsstest du alles mit for(i in object) durchsuchen dir die dateinamen ausgeben lassen und dann die funktionen zuordnen. (= viel mehr arbeit)
__________________
--- :P ---

Blog
Bei unerwünschten Nebenwirkungen zerreißen Sie die Packungsbeilage oder erschlagen ihren Arzt oder Apotheker
_geo_ ist offline   Mit Zitat antworten
Alt 28-02-2004, 19:54   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Frreiburg
Beiträge: 11
du meinst in jeden keyframe, in dem buttons auftauchen:

this.onRelease=function() {trace("this._name");}

und wie kann ich dann in der funktion im hauptfilm die ausgabe des button-names weiter verwenden ?

ich will jedem klick ein gotoAndStop ("irgendwo") und dann noch weitere, unterschiedliche aktionen zuordnen...
mokkinger ist offline   Mit Zitat antworten
Alt 28-02-2004, 19:59   #4 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Frreiburg
Beiträge: 11
oder was meinst du mit vorlage ?
kann ich einem button selbst eine aktion zuweisen, die er immer ausführt, oder nur einer instanz eines buttons ?
mokkinger ist offline   Mit Zitat antworten
Alt 28-02-2004, 20:01   #5 (permalink)
r0b
Neuer User
 
Benutzerbild von r0b
 
Registriert seit: Feb 2002
Ort: Hamburg
Beiträge: 1.281
Zitat:
aber in mehreren Bildern in diesen MCs an verschiedenen stellen auftauchen...
Das ist ein Problem.
Wenn du z.B. auf _root einen mc hast, in dem an keyframe 2-3 ein button ist, so kannst du dem vom _root aus keine onRelease function zuweisen, da er von dieser Position aus gesehen noch garnicht vorhanden ist.

Somit kannst du zwar eine globale onReleaseMachDies function vorab definieren, aber du wirst sie dann zuweisen müssen, wenn der Button auch "zu sehen" ist.

mfg

Robert
__________________
robertreich.de v4 | Pixelfonts & FlashSite Tutorial
Friends of ED - Byte Size Flash MX: Adventures in Optimization

"Give a man a fish, and he eats for a day... Show him how to fish, and he eats for a lifetime."
r0b ist offline   Mit Zitat antworten
Alt 28-02-2004, 20:10   #6 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Was indy äääh geo meinte, war glaub ich, in das Symbol selber in die Timeline ein this.onRelease = function{..} zu setzen.
Dann wirds aber schwierig (interessant...), wenn das Ding unterschiedliche Aktionen bekommen soll...
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist offline   Mit Zitat antworten
Alt 28-02-2004, 20:22   #7 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Frreiburg
Beiträge: 11
ich glaube, mein problem ist folgendes:
ich müsste doch eigentlich nur eine funktion im hauptfilm schreiben ala:

_global.function buttonaktion (instanzname) {
if (instanzname == "button1") {
aktion1;
aktion2; usw
}
}

und das dann für alle button-instanzen definieren, oder ? und dann in den MCs in die jeweiligen keyframes:

buttonx.onRelease = aktion (buttonx);

aber eben genau das funkt. bei mir nicht :-(
mokkinger ist offline   Mit Zitat antworten
Alt 28-02-2004, 20:28   #8 (permalink)
r0b
Neuer User
 
Benutzerbild von r0b
 
Registriert seit: Feb 2002
Ort: Hamburg
Beiträge: 1.281
Parameter zu übergeben ist hierbei keine gute Idee.
ActionScript:
  1. _global.function buttonaktion () {
  2.  
  3. var strInstName = this._name;
  4.  
  5. switch (strInstName) {
  6.  
  7. case "homebutton":
  8. gotoAndPlay("whatever");
  9. break;
  10.  
  11. case "kontaktbutton":
  12. gotoAndPlay("whatever");
  13. break;
  14.  
  15. /... und so weiter
  16.  
  17. }
  18. }

So sollte es funktionieren.

mfg

Robert
__________________
robertreich.de v4 | Pixelfonts & FlashSite Tutorial
Friends of ED - Byte Size Flash MX: Adventures in Optimization

"Give a man a fish, and he eats for a day... Show him how to fish, and he eats for a lifetime."
r0b ist offline   Mit Zitat antworten
Alt 28-02-2004, 21:21   #9 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Frreiburg
Beiträge: 11
beei mir gehts nur so, ansonsten bekomm ich ne fehlermeldung:

_global.buttonaktion = function () {

var strInstName = this._name;

switch (strInstName) {

case "button1":
gotoAndPlay("open1");
break;

case "button12":
gotoAndPlay("active12");
break;

/... und so weiter

}
}

ist aber wahrscheinlich das gleiche, oder ?

nur wenn ich das ganze dann in dem MC mit

button1.onRelease = buttonaktion("button1")

aufrufen will, geht da nix! irgendwas mach ich noch falsch, ich bekomm keine fehlermeldung, aber es folgt auf den klick auch keine aktion... ?!?
mokkinger ist offline   Mit Zitat antworten
Alt 28-02-2004, 21:48   #10 (permalink)
r0b
Neuer User
 
Benutzerbild von r0b
 
Registriert seit: Feb 2002
Ort: Hamburg
Beiträge: 1.281
der Aufruf für den Button:
ActionScript:
  1. button1.onRelease = buttonaktion;
mfg

Robert

ps: Und nutze mal die as /as einschließung, damit der Code gehighlighted wird. Dann sieht man auch besser obs richtig ist oder nicht.
__________________
robertreich.de v4 | Pixelfonts & FlashSite Tutorial
Friends of ED - Byte Size Flash MX: Adventures in Optimization

"Give a man a fish, and he eats for a day... Show him how to fish, and he eats for a lifetime."
r0b ist offline   Mit Zitat antworten
Alt 28-02-2004, 23:01   #11 (permalink)
querdenker
 
Benutzerbild von kelor
 
Registriert seit: Jun 2001
Ort: formel1-stadt hockenheim
Beiträge: 4.731
und wieder ein grund mit 'single-frame'- applikationen zu arbeiten...

greetz

kelor
kelor ist offline   Mit Zitat antworten
Alt 29-02-2004, 01:29   #12 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: Frreiburg
Beiträge: 11
super, danke! jetzt gehts so, wie es soll!
grüße, und gute nacht :-)
mokkinger ist offline   Mit Zitat antworten
Antwort

Lesezeichen

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



Alle Zeitangaben in WEZ +1. Es ist jetzt 23:58 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele