Avatar billede f5 Nybegynder
05. november 2003 - 11:01 Der er 11 kommentarer og
1 løsning

linier i et tekstfelt

Hej,

Er der en måde at få at vide hvor mange linjer man har i sit tekst felt. Jeg har et tekstfelt som jeg indsætter dynamisk tekst i. Jeg har så brug for at vide hvor mange linieer teksten fylder i feltet...?

VH
Michael
Avatar billede f5 Nybegynder
05. november 2003 - 11:06 #1
helst, vil jeg gerne have x og y positionen til starten af hver sætning...
Avatar billede medions Nybegynder
05. november 2003 - 11:08 #2
\n

Fx.

Dette er din tekst\n og dette er din nye linje

//>Rune
Avatar billede medions Nybegynder
05. november 2003 - 11:09 #3
Hov, min fejl ;o)
Over and out...

//Rune
Avatar billede gulekings Nybegynder
05. november 2003 - 11:34 #4
dit tekstfelt's maxscroll.. minus de linier du kan se i feltet i forvejen
magnus
Avatar billede barklund Nybegynder
05. november 2003 - 12:14 #5
Hvilken version er Flash bruger du? Fylder du hele dit tekstfelt op med linier, så der er nogle udenfor, eller er de alle synlige?

Mht. din sidste kommentar, vil du så have x og y for hver linies start eller for hver sætning (mellem punktummer)?
Avatar billede f5 Nybegynder
05. november 2003 - 13:36 #6
player version er 6.0.4 eller højere og så bruger jeg gode gamle MX :-)

Alle linier er synlige og jeg vil gerne have x/y for hver linies start hvis det er muligt....
Avatar billede f5 Nybegynder
05. november 2003 - 14:06 #7
Jeg er nemelig ikke sikker på at det kan lade sig gøre....
Avatar billede barklund Nybegynder
05. november 2003 - 14:11 #8
Du kan lave dit tekstfelt en linie højt og slå multiline til. Så kan du når teksten er derinde læse maxscroll (giver antal linier), slå wordWrap og autosize til og så læse textHeight, som er den præcise højden af din tekst. Det er ikke nemt, men hvis du arbejder lidt rundt med det, skulle det kunne lade sig gøre.
Avatar billede f5 Nybegynder
05. november 2003 - 14:34 #9
Det første jeg prøvede var sådan noget her (see sidste linie):

this.createTextField('myT', 1, 100, 100, 100, 100);
this.myT.wordWrap = true;
this.myT.multiline = true;
this.myT.border = true;
this.myT.text = "ad sdlfh æahg abgwie ug aægbai gu ag aiuga aoæw bag bagughe røø aera dfbdh";
this.myFormat = new TextFormat();
this.myFormat.font = "Arial Black";
this.myT.setTextFormat(this.myFormat);
this.myT.autoSize = true;
//
//
diff = this.myT._height/this.myT.bottomScroll;

så kan jeg gange this.myT._y med (diff* linienr) det virker nogenlunde, men ikke precist. Jeg kan ikke helt se hvad den første del af dit forslag skal gøre.

Kan du ikke forklare mig hvad grunden er?

VH
Michael
Avatar billede barklund Nybegynder
05. november 2003 - 14:57 #10
Jeg havde glemt bottomScroll, men det er jo netop svaret :)

Din diff skal jo nok være:

diff = this.myT._height/(this.myT.bottomScroll+1);

Da nederste position jo angiver bunden af tekstfeltet og ikke toppen af nederste linie. Altså skal vi forestille os, at fra bunden af tekstfeltet vil linie nummer bottomScroll+1 starte :)
Avatar billede f5 Nybegynder
05. november 2003 - 16:01 #11
Jeg har desvære ikke tid til at kigge på det lige nu, men jeg vil vænne tilbage til det meget snart og så vil jeg lige prøve...
Avatar billede level75 Nybegynder
06. november 2003 - 11:05 #12
stik mig din mail så skal jeg sende dig en fla hehe. så bliver det fixet
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