我试图在启用后立即更改 ComboBox 的文本。但是,直到第二次调用该函数(在这种情况下,当第二次按下按钮时),文本才会更新。函数期间的 trace() 显示 text 属性第一次确实发生了变化,但直到第二次调用此函数时,该变化才在屏幕上可见。
这是一个测试用例,它应该说明粘贴到 Flash CS5 中新项目的第一帧时出现的问题:
import flash.events.Event;
import fl.controls.Button;
import fl.controls.ComboBox;
stop()
var btn_test:Button = new Button()
var cb_test:ComboBox = new ComboBox()
this.addChild(btn_test)
this.addChild(cb_test)
btn_test.x = 100
cb_test.enabled = false
btn_test.addEventListener(MouseEvent.MOUSE_DOWN, setText)
function setText(evt:Event)
{
cb_test.enabled = true
cb_test.textField.text = "foo"
trace(cb_test.textField.text)
}