PDA

Volledige versie bekijken : local..global...wil niet ..!!


joosties
%Europe/Berlin %889 %2007, 22:20
Hallo,

Ik probeer binnen een functie een variabele te declaren die vervolgens uit te lezen is buiten deze functie. De eerste 'trace' geeft de correcte waarde, de tweede geeft een undefined.
Ik heb het ook al geprobeerd met _global maar het wil maar niet lukken. Weet iemand waar ik de fout in ga ...??

Alvast bedankt..

///////////////////////// Declare variables //////////////////////////////////////////////////
var textFile:String = "Text02.txt";
///////////////////////// Create TextField & Load text ///////////////////////////////////////
this.createTextField("in_textField_txt", 0, 10, 10, 200, 0);
in_textField_txt.autoSize = "left";
in_textField_txt.border = true;
in_textField_txt.multiline = true;
in_textField_txt.wordWrap = true;
in_textField_txt.selectable = true;

var loadedLvar:LoadVars = new LoadVars();
loadedLvar.load(textFile);
loadedLvar.onLoad = function(success:Boolean) {
if (success) {
in_textField_txt.text = this.cont01 + this.cont02;
maxHeight = new Number;
_root.maxHeight = in_textField_txt._height;
trace ("1 : "+ maxHeight)
}
}
trace ("2 : "+ maxHeight);
//////////////////////////////////////////////////////////////////////////////////////////////

Dauntless
%Europe/Berlin %894 %2007, 22:27
Een variabele die binnen een functie gedefinieerd is, kan niet gebruikt worden buiten die functie.

Je moet gewoon vanaf de onLoad verder gaan in functies:
///////////////////////// Declare variables //////////////////////////////////////////////////
var textFile:String = "Text02.txt";
///////////////////////// Create TextField & Load text ///////////////////////////////////////
this.createTextField("in_textField_txt", 0, 10, 10, 200, 0);
in_textField_txt.autoSize = "left";
in_textField_txt.border = true;
in_textField_txt.multiline = true;
in_textField_txt.wordWrap = true;
in_textField_txt.selectable = true;

var loadedLvar:LoadVars = new LoadVars();
loadedLvar.load(textFile);
loadedLvar.onLoad = function(success:Boolean) {
if (success) {
in_textField_txt.text = this.cont01 + this.cont02;
maxHeight = new Number();
_root.maxHeight = in_textField_txt._height;
trace ("1 : "+ maxHeight)
someOtherStuff();
}
}
function someOtherStuff()
{
trace ("2 : "+ _root.maxHeight);
}
//////////////////////////////////////////////////////////////////////////////////////////////