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 underligtHvis 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;
}
