Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash 8

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-12-2006, 12:48   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 7
Dynamischen Buttons dynamisch getURL Funktionen zuweisen

Hallo,

ich habe ein Problem wenn ich versuche dynamisch eine Button.onRelease funktion erstellen will. Mit folgendem "statischen" Ansatz kann ich den Buttons URLs zuweisen.

PHP-Code:
var LoadVarObject = new LoadVars ();
var 
myArr:Array = new Array();
LoadVarObject.onLoad = function (loadSuccess)
{
  if (
loadSuccess == true)
  {
    
_root.myArr this.all_urls.split("|");

    for (var 
i=0i<=anzahlBookmarksi++){
        
_root["menu_item"+i].title.text myArr[i];

        }
    
menu_item0.onRelease = function(){
    
getURL(myArr[0], "_blank");
    };
    
menu_item1.onRelease = function(){
    
getURL(myArr[1], "_blank");
    };
    
menu_item2.onRelease = function(){
    
getURL(myArr[2], "_blank");
    };
    
menu_item3.onRelease = function(){
    
getURL(myArr[3], "_blank");
    };
  }
};

LoadVarObject.load ("stuff.php"); 
Wenn ich versuche die Funktionen über einen Schleife zu erstellen, dann sieht die Sache schon anders aus. Jeder Button zielt dann auf genau eine Zielurl.


PHP-Code:
LoadVarObject.onLoad = function (loadSuccess)
{
  if (
loadSuccess == true)
  {
    
_root.myArr this.all_urls.split("|");


    for (var 
i=0i<=anzahlBookmarksi++){
        
_root["menu_item"+i].title.text myArr[i];
        
_root["menu_item"+i].onRelease = function(){
            
getURL(myArr[i], "_blank");}
        }

  }
}; 

Woran kann es liegen? Vielleich geht es auch ganz anders....
Danke schonmal für die Hilfe

Mak
-Mak- ist offline   Mit Zitat antworten
Alt 19-12-2006, 12:57   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Ist immer das selbe Problem. Die Schleife ist durch, wenn du deinen Button anklickst.
PHP-Code:
LoadVarObject.onLoad = function (loadSuccess

  if (
loadSuccess == true
  { 
    
_root.myArr this.all_urls.split("|"); 


    for (var 
i=0i<=anzahlBookmarksi++){ 
        
_root["menu_item"+i].title.text myArr[i]; 
        
_root["menu_item"+i].onRelease = function(){ 
            
getURL(this.title.text"_blank");} 
        } 

  } 
}; 
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 19-12-2006, 19:18   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 7
Jo, das habe ich mich auch gedacht. Aber wie "macht man sowas" in Flash möglichst geschickt?
-Mak- ist offline   Mit Zitat antworten
Alt 20-12-2006, 15:26   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 7
Ich habe es jetzt gelöst. Im ersten Bild werden die Variablen geladen und der ActionScript code läuft dann im 7. Bild ab. Damit sind alle Variablen bekannt und der Code kann ausgeführt werden.


PHP-Code:
var xPos:Number 0;
var 
yPos:Number 0;

var 
MC:MovieClip this.createEmptyMovieClip ("MC"0);
for (var 
nCount:Number 1nCount <= 9nCount++)
{
    var 
btn:MovieClip MC.createEmptyMovieClip ("btn_" nCountnCount);
    
btn.nCount nCount;
    
with (btn)
    {
        if (
nCount 0)
        {
        var 
angle = ((360/9)*nCount)*Math.PI/180;
            
xPos = (Stage.width/2-50)+Math.sin(angle)*100;
            
yPos = (Stage.height/2-15)+Math.cos(angle)*100;
        }
        
        var 
txtField:TextField btn.createTextField ("txtField_" nCountnCountxPos+11yPos 210020);
        
//txtField.text = "btn_" + nCount;
        
txtField.text daten[nCount];
        
        
txtField.selectable false;
        
beginFill (0x00FF0070);
        
moveTo (xPosyPos);
        
lineTo (xPos+104yPos);
        
lineTo (xPos+104yPos 15);
        
lineTo (xPos+8yPos 15);
        
lineTo (xPos+8yPos);
        
endFill ();
    }
        
    
btn.onRelease = function() {
            
this["txtField_" this.nCount].text daten[this.nCount];//"BUTTON_" + (this.nCount);
            
getURL(daten[this.nCount], "_blank");
    };
    
}
stop(); 
-Mak- 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 22:51 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele