Flashhilfe.de - Flash Community

parameter an function übergeben [Flash 10]

 


AntwortenRegistrieren Seite1  

grische#1
Benutzerbild von grische
Beiträge: 61
Registriert: Feb 2008

07.10.2009, 16:47

hallo zusammen,

ich habe folgendes problem:

ich mochte eine fonction mit einer variablen aufrufen die sich bei jedem button ändert.
also ich schreib hier mal den code:

ActionScript:
1
2
3
4
5
6
7
8
menue.t_produkt.addEventListener(MouseEvent.CLICK, prouktIn);

function prouktIn(e:MouseEvent):void {
   addChild( loader ); 
   var meineURL:String = "produkt.swf"
   var meinURLReq:URLRequest = new URLRequest(meineURL);
   loader.load( meinURLReq );
}


so und jetzt soll bei einem anderen button die gleiche function aufgerufen werden,
aber "produkt.swf" möchte ich dann gegen eine andere tauschen.

das is sicher nicht all zu schwer.
danke für eure hilfe...
Sleepingbeast#2
Benutzerbild von Sleepingbeast
Beiträge: 579
Wohnort: Halle
Registriert: Apr 2005

07.10.2009, 17:24

Hallo grische,

dass du für den anderen Button einen weiteren EventListener erstellen musst, ist sicherlich klar. Um damit die aufgerufene Funktion dann immer die gleiche bleibt - also etwa prouktIn - könntest du innerhalb der Funktion z.B. mit switch/case arbeiten, wobei du den Instanznamen des entsprechenden targets abfragst. Das sollte dann in etwa so aussehen (ungetestet!):

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
button1_mc.addEventListener(MouseEvent.CLICK, deineFunktion);
button2_mc.addEventListener(MouseEvent.CLICK, deineFunktion);
button3_mc.addEventListener(MouseEvent.CLICK, deineFunktion);
button4_mc.addEventListener(MouseEvent.CLICK, deineFunktion);

function deineFunktion(e:MouseEvent):void {
   switch(e.target.name) {
       case "button1_mc":
         trace("button1 geklickt");
         break;
       case "button2_mc":
         trace("button2 geklickt");
         break;
       case "button3_mc":
         trace("button3 geklickt");
         break;
       case "button4_mc":
         trace("button4 geklickt");
         break;
   }
}


Du musst dann nur noch deinen Loader in die Funktion einbauen und statt des trace deine entsprechende URL als String in die meineURL-Variable übergeben.
Sollte aber so funktionieren.


Patrick
_________________________________________________________
Um Rekursion wirklich zu verstehen, muss man zuerst Rekursion verstehen.
null != 'null' != 0 != '0'
grische#3
Benutzerbild von grische
Beiträge: 61
Registriert: Feb 2008

Themenautor/in

07.10.2009, 17:27

ja cool so in der art hab ich mir das gedacht.

vielen dank....
Sleepingbeast#4
Benutzerbild von Sleepingbeast
Beiträge: 579
Wohnort: Halle
Registriert: Apr 2005

07.10.2009, 17:38

So, jetzt ist es getestet... ;)
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
button1_mc.addEventListener(MouseEvent.CLICK, prouktIn);
button2_mc.addEventListener(MouseEvent.CLICK, prouktIn);
button3_mc.addEventListener(MouseEvent.CLICK, prouktIn);
button4_mc.addEventListener(MouseEvent.CLICK, prouktIn);

var loader:Loader = new Loader();
addChild(loader);

function prouktIn(e:MouseEvent):void {
   var meineURL:String;
   
   switch(e.target.name) {
       case "button1_mc":
         meineURL = "001.swf";
         break;
       case "button2_mc":
         meineURL = "002.swf";
         break;
       case "button3_mc":
         meineURL = "003.swf";
         break;
       case "button4_mc":
         meineURL = "004.swf";
         break;
   }
  var meinURLReq:URLRequest = new URLRequest(meineURL);
  loader.load(meinURLReq);   
}



Patrick
_________________________________________________________
Um Rekursion wirklich zu verstehen, muss man zuerst Rekursion verstehen.
null != 'null' != 0 != '0'
grische#5
Benutzerbild von grische
Beiträge: 61
Registriert: Feb 2008

Themenautor/in

07.10.2009, 17:41

jap genau so super vielen dank für die schnelle antwort....

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2022 Sebastian Wichmann - Flashhilfe.de