package {
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.events.*;
import flash.events.TextEvent;
import fl.controls.ComboBox;
import fl.controls.DataGrid;
import fl.data.DataProvider;
public class da_ComboBox extends MovieClip {
private var urlRequest:String;
private var loader:URLLoader;
private var dp:DataProvider;
private var cb:ComboBox = new ComboBox();
private var xml:XML;
private var formatForGlobal:TextFormat;
public function da_ComboBox():void {
setupStyles();
urlRequest = "XML/opgemaaktin.xml";
loader=new URLLoader ;
loader.addEventListener(Event.COMPLETE,onXMLLoaded);
loader.load(new URLRequest(urlRequest));
}
private function setupStyles():void {
formatForGlobal=new TextFormat ;
formatForGlobal.font="Vrinda";
formatForGlobal.bold=true;
formatForGlobal.color=0x8d8262;
formatForGlobal.size=20;
formatForGlobal.leftMargin = 50;
}
private function loadXML(urlRequest:String):void {
loader=new URLLoader ;
loader.addEventListener(Event.COMPLETE,onXMLLoaded);
loader.load(new URLRequest(urlRequest));
}
private function onXMLLoaded(event:Event):void {
xml=new XML(loader.data);
drawOpgemaaktin();
}
private function drawOpgemaaktin():void {
trace("draw ComboBox");
dp = new DataProvider(xml);
dp.sortOn("label");
dp.addItem({label:"Andere"});
cb.name = "cbOpgemaaktin";
cb.move(280,85);
cb.setSize(250,28);
cb.prompt="type woning";
cb.textField.text = "Click in this text field";
cb.rowCount = 15;
cb.setStyle("embedFonts", true);
cb.textField.setStyle("textFormat",formatForGlobal);
cb.dropdown.setRendererStyle("textFormat", formatForGlobal);
cb.dataProvider = dp;
cb.addEventListener(Event.CHANGE,vkTypeSelected);
cb.textField.addEventListener(TextEvent.TEXT_INPUT,
textInputHandler);
addChild(cb);
}
private function vkTypeSelected(e:Event):void {
trace("Event.CHANGE");
var myCB:ComboBox = e.currentTarget as ComboBox;
trace(myCB.selectedItem.label);
if (myCB.selectedItem.label == "Andere") {
myCB.editable = true;
myCB.textField.text = "Click in this text field";
}
}
private function textInputHandler(e:Event):void {
trace("TextEvent.TEXT_INPUT");
}
}
}