
Код:
bb.tf._height = bb.tf.textHeight + 5;
Операция бессмыслена при включенном автосайзе.
4 - это (2 + 2) - размеры отступов текстого поля. Когда там текст, к высоте строки + растояние между строками добавляется еще 4 пикселя. Когда поле пустое, то остаются только они.
Попробуйте сменить очередность. Сначала сформируйте поля, а потом во втором цикле расставте их по высоте. Текст не всегда успевает инициализироваться, поэтому на момент запроса высоты, можно получить 0. Я давно с этим не сталкивался, а вот в6-ой версии постоянно. Порой поставишь после установки значения текста, но до установки высоты, трейс и все работает. Трейс убираю и опять высота было 0.