Немного причуды.
Когда вы устанавливаете ширину / высоту объекта MovieClip, Flash внутренне также настраивает свойства scaleX
и scaleY
. Например, если исходная ширина была 100, а теперь вы установили ее на 200, то новый scaleX
должен быть равен 2. Это означает, что Flash отобразит его в 2-кратном масштабе по горизонтали.
Теперь изначально ширина равна 0 (пустой объект), поэтому, когда вы устанавливаете новую ширину, новый scaleX
должен стать бесконечным - или 0, как это делает Flash.
Таким образом, даже если вы нарисовали что-то на объекте, оно все еще находится в нулевом масштабе, поэтому ничего не отображается. Способ исправить это, как предлагает другой автор, состоит в том, чтобы избежать установки ширины / высоты на пустом объекте или, в качестве альтернативы, сбросить scaleX
и scaleY
на 1 после завершения рисования.
...
_extra.graphics.endFill();
_extra.scaleX = _extra.scaleY = 1;