#flash #actionscript-3 #flex4
#flash #actionscript-3 #flex4
Вопрос:
Я пытаюсь создать расширяющийся объект с помощью следующего обработчика событий
public function pickerMove(e:MouseEvent):void {
trace("in mouse move");
var offsetX:int = e.stageX - touchX;
trace(offsetX);
picker.x = offsetX;
trace(picker.width);
picker.width -= offsetX;
trace(picker.width);
touchX = e.stageX;
}
Средство выбора.x = offsetX работает точно так же, как ожидалось, и перемещает координату x компонента.
Проблема в средстве выбора.width -= offsetX
Ширина компонента на экране не меняется, но изменяется значение параметра выбора.ширина изменяется по мере распечатки на консоли.
Вот некоторый пример вывода из трассировки:
in mouse move
-1
928
929
in mouse move
-1
929
930
in mouse move
-1
930
931
Есть ли что-то, чего я не знаю об изменении размера пользовательских компонентов?
Ответ №1:
Попробуйте использовать механизмы аннулирования пользовательского компонента и переопределить updateDisplayList()
в вашем пользовательском компоненте, чтобы перерисовать ваш компонент с новой шириной.
Комментарии:
1. Это комментарий или ответ? Если вы хотите, чтобы это был ответ, не могли бы вы предоставить немного больше справочной информации, пожалуйста?