Avatar billede zezilie Nybegynder
05. april 2005 - 11:04 Der er 28 kommentarer og
1 løsning

hente tekst ind i MC

Hej alle sidder og forsøger at hente tekst ind fra et tekst document det virker også fint med

loadVariablesNum ("dansk.txt",0);

Og et dynamisk tekst felt med variabel

Men hvis nu dette tekst felt ligger inde i et MC, hvordan smider jeg så lige teksten derind.
--- MC'et hedder "tolv" og det dynamiske felt "H1o"

Håber der er en der kan forklare dette
Avatar billede jakwag Nybegynder
05. april 2005 - 11:10 #1
først og fremmest ville jeg aldrig hente tekst på den måde. Prøv det her:

var myVars = new LoadVars();

myVars.onLoad = function()
{
tolv.H10.text = this.variabelFraTextFil;
}
myVars.load();

: ) Jakob
Avatar billede rohaje Nybegynder
05. april 2005 - 11:11 #2
tolv.h1o=h1o;

men du skal først kalde det script efter at variablen er loadet. Du kan med fordel bruge loadVars Object'et i stedet loadVariablesNum,

my_lv=new LoadVars();
my_lv.onLoad=function(ok){
    if(ok){
        //tolv.h1o=this.h1o;
        //også bedre at bruge h1o.text og så give dit textField et instance navn i stedet for var
        tolv.h1o.text=this.h1o;
    }
}
my_lv.load(urlenTilMinTxtFil.txt);
Avatar billede rohaje Nybegynder
05. april 2005 - 11:12 #3
ha- lidt for slow
Avatar billede jakwag Nybegynder
05. april 2005 - 11:13 #4
på den måde kan du styre præcis hvor de forskellige variabler ryger hen. Lad os sige at du har en tekstfil der ser sådan ud:

&minVar1=Hello&
&minVar2=World&

Så kommer dit "myVars" object fra før til at have en property der hedder minVar1 og som indeholder "Hello" osv. De kan nu kaldes direkte fra objectet.
Avatar billede jakwag Nybegynder
05. april 2005 - 11:14 #5
rohaje > hehe - ja nu var jeg her lige for første gang i laaang tid, så kunne jeg ligeså godt svare på et par spørgsmål :D
Avatar billede rohaje Nybegynder
05. april 2005 - 11:19 #6
det samme her :)
Avatar billede zezilie Nybegynder
05. april 2005 - 11:27 #7
oki har smidt denne
my_lv=new LoadVars();
my_lv.onLoad=function(ok){
    if(ok){
        //tolv.h1o=this.h1o;
        //også bedre at bruge h1o.text og så give dit textField et instance navn i stedet for var
        tolv.h1o.text=this.h1o;
    }
}
my_lv.load(dansk.txt);
i første frame i min main time line men synes ikke der sker noget
Avatar billede jakwag Nybegynder
05. april 2005 - 11:31 #8
Dit mc skal osse ligge i første frame i main timeline. h1o skal være instancename på textFeltet (altså ikke stå i var feltet). Det kunne i hvert fald være fejl.
Avatar billede jakwag Nybegynder
05. april 2005 - 11:34 #9
prøv at skriv:

my_lv=new LoadVars();
my_lv.onLoad=function(ok){
    if(ok){
        trace("var: "+this.h1o);
        trace("textField: "+tolv.h1o);
        tolv.h1o.text=this.h1o;
    }
}
my_lv.load(dansk.txt);


... og så fortæl hvad den siger i output.
Avatar billede zezilie Nybegynder
05. april 2005 - 11:35 #10
den skriver fejl kan ikke åbne txt documentet
Avatar billede zezilie Nybegynder
05. april 2005 - 11:37 #11
det samme som oven over, problemet er oxo at jeg har en del variabler der skal smides rundt
Avatar billede jakwag Nybegynder
05. april 2005 - 11:43 #12
hvis den skriver den ikke kan åbne dokumentet, er det den fejl der først og fremmest skal rettes.

Hovsa.. my_lv.load(dansk.txt); skal være
my_lv.load("dansk.txt");

altså i gåseøjne. Men filen skal osse ligge samme sted som swf'en. hvis den ligger i en undermappe skal du have hele stien med. f.eks.:

my_lv.load("undermappe/dansk.txt");
Avatar billede zezilie Nybegynder
05. april 2005 - 11:54 #13
oki nu virker det så ret fint

og hvis der er to variabler der skal smides i et MC ville det blive sådan

my_lv=new LoadVars();
my_lv.onLoad=function(ok){
    if(ok){
        //tolv.h1o=this.h1o;
        //også bedre at bruge h1o.text og så give dit textField et instance navn i    stedet for var
        tolv.h1o.text=this.h1o;
        tolv.h1.text=this.h1;
    }
}
my_lv.load("dansk.txt");

Nu kommer det store problem så hvis dette tekst så skal kunne ændres til at andet sprog ved et tryk på en knap, det vil sige har 3 .txt'er  dansk.txt  tysk.txt  engelsk.txt de indeholder det samme og de samme "var" navne kunne man fore stille sig en knap der kunne vælge, men det skal jo være over hele filmen den skal ændre ved tryk på det tyske ikon/knap
Avatar billede jakwag Nybegynder
05. april 2005 - 12:02 #14
noget i denne retning må virke.

// skifte function
shiftLang(lang)
{
my_lv.load(lang);
}

// laver loadvars object og definere hvad der skal ske når det modtager data
my_lv=new LoadVars();
my_lv.onLoad=function(ok){
    if(ok){
        tolv.h1o.text=this.h1o;
        tolv.h1.text=this.h1;
    }
}

// henter første sprog
shiftLang("dansk.txt");

//tysk knap:
btnTysk.onRelease = function()
{
shiftLang("tysk.txt");
}

//dansk knap:
btnTysk.onRelease = function()
{
shiftLang("dansk.txt");
}
Avatar billede zezilie Nybegynder
05. april 2005 - 12:06 #15
ok og så vil den beholde den valgte shiftlang i resten af filmen
Avatar billede jakwag Nybegynder
05. april 2005 - 12:09 #16
ja, den vil blive ved med at værre der, men husk at den ligger på maintimeline og kan altså ikke kaldes hvor som helst fra. Kom enelig tilbage hvis det gør flere knuder :)
Avatar billede jakwag Nybegynder
05. april 2005 - 12:13 #17
i virkeligheden er det måske lidt overkill det jeg lige fik skruet sammen der. du kan nøjes med at skrive:

// laver loadvars object og definere hvad der skal ske når det modtager data
my_lv=new LoadVars();
my_lv.onLoad=function(){
        tolv.h1o.text=this.h1o;
        tolv.h1.text=this.h1;
}

// henter første sprog
my_lv.load("dansk.txt");

//tysk knap:
btnTysk.onRelease = function()
{
my_lv.load("tysk.txt");
}

//dansk knap:
btnTysk.onRelease = function()
{
my_lv.load("dansk.txt");
}


Din if(ok) sætning behøves du heller ikke, hvis den ikke har en "else" der kan fortælle den hvad den skal gøre hvis den ikke er ok, er den ikke til mege hjælp.
Avatar billede zezilie Nybegynder
05. april 2005 - 12:18 #18
tilbage hmm troede at jeg kunne smide dem længere ind som foreksempel ind i et MC som ligger i et andet ved at tolv.1.h1o.text=this.h1o; men det gør den ikke
Avatar billede jakwag Nybegynder
05. april 2005 - 12:20 #19
det kan du osse godt, men et instanceName må aldrig starte med et tal. Altså 1 er et ugyldigt navn. Prøv at rette det og se om det så virker.
Avatar billede zezilie Nybegynder
05. april 2005 - 12:24 #20
oki cool nok, du skal nok få point hvis du smider et svar, men vender nok tilbage en dag hehe
Avatar billede jakwag Nybegynder
05. april 2005 - 12:26 #21
*sml* du skal være så velkommen. :)
Avatar billede zezilie Nybegynder
10. april 2005 - 09:40 #22
oki så er jeg vist lidt tilbage, ville hører om teksten ikke kan sendes ind i et MC som hentes ind i flash UI components, da jeg har fundet frem til at der skal noget scroll på ville jeg så bruge scroll pane men kan ikke få teksten derind
Avatar billede jakwag Nybegynder
11. april 2005 - 09:40 #23
Du bruger linkage, ikke?

Du kan ændre på texten sådan her. Vi antager at dit scrollPane hedder "spTest"

my_lv=new LoadVars();
my_lv.onLoad=function(){
        spTest.content.h1o.text=this.h1o;
}

// henter første sprog
my_lv.load("dansk.txt");

//tysk knap:
btnTysk.onRelease = function()
{
my_lv.load("tysk.txt");
}

//dansk knap:
btnTysk.onRelease = function()
{
my_lv.load("dansk.txt");
}

Når du skriver spTest.content har du fat i det movieclip som du har lavet linkage på.

: ) Jakob
Avatar billede zezilie Nybegynder
11. april 2005 - 18:05 #24
Synes jeg oxo burde virke problemet med det linkage er at jeg så skal exporte in first frame, og dette smadre min preloader så havde slået eksport in first frame fra, hjalp da jeg slog den til, hehe

Er det egentligt muligt at sende variablen fra skifte sprog funktionen til en ekstern swf der loades ind i hoved filmen. Sådan at hvis der vælges tysk i hoved filmen vil også vil være tysk tekst i den loadede .swf
Avatar billede jakwag Nybegynder
12. april 2005 - 08:59 #25
hej igen

Tja, export in first frame har jeg aldrig fattet.

Du kan sagtens dele det op i forskellige swf's. Det bedste ville nok være at gøre omtrent som du gør nu, fordi hvis du deler det op vil du have 4 sprog versioner som er helt ens og hvis du så skal rette noget skal det rettes i alle 4 istedet for kun én.

Men det du har kastet dig ud i er slet ikke nemt, hvis det er første gang kan det sagtens være at du skal lave det om, from scratch, et par gange før det bliver den ultimative løsning.

Jakob
Avatar billede zezilie Nybegynder
12. april 2005 - 16:31 #26
Ja det var oxo lidt derfor jeg ville forsøge med dette sprogskift istedet for de 3 swf'er

Men det jeg egentligt ville vide var, at når man står i hoved filmen og kan vælge sit sprog, som jo default står til dansk, vil dette sprogskift så også virke i en swf der hentes ind uden at man så skal skifte sprog igen.

Eller skal man have en funktion i swf'en der hentes ind i hoved filmen, som henter shift(lang) variablen ind
Avatar billede jakwag Nybegynder
15. april 2005 - 10:02 #27
hej

Hvis du henter teksten ind i én fil og derefter loader en anden, vil den ikke automatisk blive udfyldt. Du skal oprette nogle variabler som den loadede fil kan hente fra hoved filen.

Jakob
Avatar billede zezilie Nybegynder
15. april 2005 - 19:17 #28
oki og den variabel jeg skal have fat i er denne shift(lang) så i den loadede fil skal jeg vel have noget loadvars(_root.my_lv.load) eller noget i den stil ?
Avatar billede jakwag Nybegynder
18. april 2005 - 09:45 #29
hej

Fortår ikke hvad du mener med shift(lang), men det er noget i den stil jeg mener.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester