Avatar billede hoppe11 Nybegynder
02. juni 2007 - 15:15 Der er 6 kommentarer og
1 løsning

textfield wordwrap+height

Jeg har et tekstfelt hvor der bliver lavet en wordwrap.. Men hvis man vil trække tekstfeltets højde ud synes jeg der sker noget underligt

Hvis jeg så laver en txt._height får jeg ikke den aktuelle højde, men kun højden svarende til en linje, selvom der måske er flere linjer.. Hvis jeg laver txt._height anden gang (lige efter hinanden) får jeg pludselig den aktuelle højde??? Hvorfor opfører den sig sådan??

eks.

mcMsg = mcBroad_content.createEmptyMovieClip('mcMsg'+data[i][0], mcBroad_content.getNextHighestDepth());

txtName = mcMsg.createTextField('txtName', mcMsg.getNextHighestDepth(), 0, 0, broadWidth, 0);
txt_format(txtName, data[i][1], '.swf_top', 'left');

txtTime = mcMsg.createTextField('txtTime', mcMsg.getNextHighestDepth(), 0, 0, broadWidth, 0);
txt_format(txtTime, data[i][2], '.swf_top', 'right');

txtMsg = mcMsg.createTextField('txtMsg', mcMsg.getNextHighestDepth(), 0, txtName._height-4, broadWidth, 0);
txtMsg.wordWrap = true;
txt_format(txtMsg, data[i][3], '.swf_top', 'left');

trace(mcMsg._height); // her bliver der kun udskrevet en højde for EN linje selvom der måske er flere

trace(mcMsg._height); // her bliver den rigtige højde udskrevet
trace('');

Jeg ved ikke om det kan have noget at sige, men min txt_format() ser således ud

function txt_format(txt, str, cls, align)
{
    txt.setNewTextFormat(CSS.transform(style_obj['p']));
    if(cls) txt.setNewTextFormat(CSS.transform(style_obj[cls]));
    txt.styleSheet = CSS;
    txt.html = true;
    txt.htmlText = str;
    if(align) txt.autoSize = align;
}
Avatar billede w13 Novice
02. juni 2007 - 15:21 #1
prøv evt. med offsetHeight i stedet.
Avatar billede hoppe11 Nybegynder
02. juni 2007 - 15:57 #2
jeg kan ikke finde noget om offsetHeight i hjælp
Avatar billede barklund Nybegynder
02. juni 2007 - 16:01 #3
Jeg tror det sikreste er at bruge textHeight - så får du højden på teksten i tekstfeltet - og ikke tekstfeltets højde.
Avatar billede w13 Novice
02. juni 2007 - 16:17 #4
textHeight er også en mulighed.

Her er lidt om offsetHeight: http://developer.mozilla.org/en/docs/DOM:element.offsetHeight
Avatar billede hoppe11 Nybegynder
02. juni 2007 - 16:33 #5
lige en anden ting.. når man tracer mc._y hvad er det så man får? er det mc'ets 0-punkt i det foregående mc?
Avatar billede w13 Novice
02. juni 2007 - 16:52 #6
Ej, jeg er simpelthen for dum. :)
Jeg læste ikke din kode igennem, da jeg mente jeg havde svaret. Jeg troede, du spurgte om JavaScript. Sry! derfor du ikke fandt noget om det i hjælpefilen.. :)
Avatar billede hoppe11 Nybegynder
02. juni 2007 - 17:10 #7
w13 >
modtaget :)

barklund >
det lader heller ikke rigtig til at virke

men hvis jeg "berører" mcMsg._height to gange er det som om den registerer sig.. det er måske lidt en dirty løsning, men det virker :)

height = mcMsg._height; height = mcMsg._height;
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