2013-06-14 2 views
0

Я пытаюсь сделать кнопку (кнопка MovieClip), что, когда вы наводите на нее курсор (MOUSE_OVER), она вызывает функцию, отображающую некоторый текст. Единственная проблема в том, что она не работает: p. Или, по крайней мере, не так, как я хочу, чтобы он работал. Дело в том, что когда я нависаю над ним в первый раз, ничего не отображается. Если я удаляю мышь из мувиклипа и снова навешиваю над ним, он работает отлично. Вот мой код:Проблема с текстовым полем As3

private var priceString:TextField = new TextField();

private function addText(price:String):void{ 
     var priceStringFormat = new TextFormat; 
     priceStringFormat.color = 0xFF0000; 
     priceStringFormat.font = 'TradeGothic';  
     priceStringFormat.size = 30; 
     priceString.x = 285; 
     priceString.y = 15; 
     priceString.setTextFormat(priceStringFormat); 
     priceString.autoSize = TextFieldAutoSize.LEFT; 
     priceString.text = "Upgrade Costs: " + price; 
     getStage.addChild(priceString); 
} 

Я не могу себя видеть проблему: с. Другие текстовые поля в том же формате в одном классе отлично работают. GetStage var поддерживает доступ к сцене. (Он работает с другими текстовыми полями). Странно также то, что если я попытаюсь добавить мувиклип вместо текстового поля, он будет работать отлично.

Вот как это должно выглядеть: http://i.stack.imgur.com/5a0jf.png

ответ

0

setTextFormat должно быть после вы установили text. Если по какой-то причине вам нужно сделать форматирование, прежде чем установить textFormat, используйте

priceString.defaultTextFormat = priceStringFormat

+0

Спасибо, брах! ;) – zoda

+0

вы ставите, рад, что сработал для вас! – Ronnie

0

Если вы хотите сказать, что вы хотите создать всплывающую подсказку при наведении курсора на кнопку, вы, вероятно, следует положить TextField в Sprite объекта. Добавьте TextField в качестве ребенка Sprite и Sprite в качестве дочернего элемента сцены. Затем либо измените альфа-значение Sprite, либо переключите его видимость с помощью Sprite.visible.

PS: для подробного учебника, см:

http://hub.tutsplus.com/tutorials/create-a-customizable-tooltip-in-actionscript-30--active-1793

EDIT:

Основываясь на изображении, при условии, что вы могли бы нужно, чтобы создать спрайт с TextField, как его ребенок в конструкторе вашей кнопки и установите свойство visible спрайта на false.

В обработчике мыши для кнопки установите значение свойства visible спрайта в true и в сбросе его в обработчике мыши.

+0

я не уверен, что это именно то, что я ищу, спасибо в любом случае. Я добавил ссылку, чтобы вы могли лучше понять. – zoda

Смежные вопросы