cara simplsimente impossivel que nao aconteça isso com mais ninguem.
to usando flex 4.

Vou colocar aqui o codigo do componente: e o codigo da chamada desse
componente.

produtos.mxml
===============================================================================
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009";
         xmlns:s="library://ns.adobe.com/flex/spark"
         xmlns:mx="library://ns.adobe.com/flex/mx"
creationComplete="iniApplication()" width="640" height="316"
xmlns:ns2="components.*">
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here
-->
    </fx:Declarations>
    <fx:Script>
        <![CDATA[

            //Classes da webservices
            import mx.rpc.events.FaultEvent;
            import mx.rpc.events.ResultEvent;
            import mx.rpc.soap.WebService;
            import mx.managers.CursorManager;
            import mx.controls.Alert;
            import mx.events.*;
            import mx.collections.*;
            import mx.managers.PopUpManager;

            //Inplementar classe Singleton
            import br.com.actvs.ControleDados;


            private var ws:WebService;
            private var filtroArr:ArrayCollection = new ArrayCollection();
            private var codVendedor:String = new String();
            private var codTabela:String = new String();

            //Variaveis que controlam a paginação
            public var pinicio:Number = new Number(1);//Inicia do 1
            public var pfim:Number = new Number(100);//Vai ate o numero
desejado
            public var habilita:Boolean = false;
            public var instancia:ControleDados =
ControleDados.getInstance();

            //Variavel que alimenta o datagrid
            public var AlimentaDG:ArrayCollection = new ArrayCollection()

            //Verifica se o usuario está logado ou não
            private function iniApplication():void{
                ws = new WebService();
                ws.loadWSDL(instancia.httpUrl);
                filtroArr.addItem({label: "CODIGO",data: "DA1_CODPRO" });
                filtroPesquisa.dataProvider = filtroArr;
                filtroPesquisa.selectedIndex = 0;

                //se vai puxar de 10 em 10 registros ou de 200 em 200 e
assim por diante.
                comp_paginacao.setIntervalo(100)
                comp_paginacao.inicializaComp();

                getCampos('');
                pes_selecionar.enabled = false;
            }

            //Chama um methodo especifico
            public function getCampos(cpes:String):void{
                CursorManager.setBusyCursor();
                ws.GETPRODUTO.addEventListener(ResultEvent.RESULT,
resultPesCond);
                ws.GETPRODUTO.addEventListener(FaultEvent.FAULT,
faultPesCond);
                //Caso ele troque o filtro ou o texto da pesquisa, retornar
os registros para o inicio.
                if(habilita == true){
                    pinicio = 1;
                    pfim = 100;
                    comp_paginacao.setAtual(1);
                    comp_paginacao.inicializaComp();
                    habilita = false;//
                }
                ws.GETPRODUTO('MSALPHA',codTabela,'DA1_FILIAL,DA1_ITEM,
DA1_CODTAB, DA1_CODPRO,DA1_PRCVEN','DA1',filtroPesquisa.selectedItem.data
,cpes, pinicio, pfim);
            }
            public function setarComponente(codVend:String,
codTab:String):void{
                codVendedor = codVend;
                codTabela    = codTab;
            }
            private function resultPesCond(event:ResultEvent):void {
                CursorManager.removeBusyCursor();
                var resultado:Object = Object(event.result);

                AlimentaDG.removeAll();
                for(var x:Number=0;x<resultado.length;x++){
                    AlimentaDG.addItem({ CODIGO: "",PRODUTO: "", UNIDADE:"",
TOTALPAG:0 });
                    AlimentaDG[x].CODIGO   = resultado[x].RCPCOD;
                    AlimentaDG[x].PRODUTO  = resultado[x].RCPNOME;
                    AlimentaDG[x].UNIDADE  = resultado[x].RCPUNIDADE;
                    AlimentaDG[x].TOTALPAG = resultado[x].TOTAL_ROWS;
                }
                dgCliente.dataProvider = AlimentaDG;
                pes_selecionar.enabled = false;
                trataPaginacao(resultado);
            }
            private function trataPaginacao(obj:Object):void{
                //Se retornou alguma coisa entao trata a paginação, se não
fica zerada.
                if(dgCliente.dataProvider.length != 0){
                    //Setar o total de registros para a paginacao

comp_paginacao.setTotal(dgCliente.dataProvider[0].TOTALPAG);
                    comp_paginacao.setDesabledTextInput(true);
                }else{
                    comp_paginacao.setDesabledTextInput(false);
                    comp_paginacao.setTotal(0);
                }
            }

            private function faultPesCond(event:FaultEvent):void {
                CursorManager.removeBusyCursor();
            }

            private function clickEventDG(ev:Event):void{
                if(dgCliente.dataProvider.length != 0)
                pes_selecionar.enabled = true;
            }
            //Controla se habilita se as informações
            private function clickEventCB(ev:Event):void{
                habilita = true;
            }
            private function selecionarItem():void{
                instancia.cCampoRetorno = dgCliente.selectedItem.CODIGO;
                instancia.cNomeRetorno = dgCliente.selectedItem.PRODUTO;
                instancia.cUnidadeRetorno = dgCliente.selectedItem.UNIDADE;
                handleCloseEvent();

            }
            public function handleCloseEvent():void {
                dispatchEvent(new Event("fechaPopUPProduto",true));
                PopUpManager.removePopUp(this);
            }

        ]]>
    </fx:Script>
    <s:Panel width="639" height="314" horizontalCenter="0"
verticalCenter="0" title="Pesquisa dos Produtos" >
        <s:Group width="100%" height="100%" top="3" left="3">
            <s:VGroup x="0" y="0" width="100%" height="100%">
                <s:VGroup width="100%" height="85%">
                    <s:HGroup width="100%" height="33">
                        <s:DropDownList width="227" id="filtroPesquisa"
change="clickEventCB(event)"></s:DropDownList>
                        <s:TextInput width="279" id="pesquisarCampo"
change="clickEventCB(event)"/>
                        <mx:Button label="Pesquisar"
click="getCampos(pesquisarCampo.text)" id="pes_button"/>
                    </s:HGroup>
                    <s:VGroup width="100%" height="100%">
                        <mx:DataGrid itemClick="clickEventDG(event)"
id="dgCliente" width="100%" height="100%">
                            <mx:columns>
                                <mx:DataGridColumn width="100"
headerText="CODIGO" dataField="CODIGO"/>
                                <mx:DataGridColumn headerText="DESCRICAO DO
PRODUTO" dataField="PRODUTO"/>
                                <mx:DataGridColumn width="100"
headerText="UNIDADE" dataField="UNIDADE"/>
                            </mx:columns>
                        </mx:DataGrid>
                    </s:VGroup>
                </s:VGroup>
                <s:HGroup width="100%" height="37">
                    <mx:Button click="selecionarItem()" label="Selecionar
Banco" id="pes_selecionar"/>
                    <mx:Button label="Fechar"  click="handleCloseEvent()"/>
                    <ns2:Paginacao id="comp_paginacao">
                    </ns2:Paginacao>

                </s:HGroup>
            </s:VGroup>
        </s:Group>
    </s:Panel>
</s:Group>


Chamada do componente dentro do meu codigo.

            import components.produtos;
            import mx.collections.*;
            import mx.controls.Alert;
            import mx.core.FlexGlobals;
            import mx.events.*;
            import mx.managers.CursorManager;
            import mx.managers.PopUpManager;
            import mx.rpc.events.FaultEvent;
            import mx.rpc.events.ResultEvent;
            import mx.rpc.soap.WebService;

public var oListaProdutos:produtos;

public function chamarTransProdutos():void{
                if(idHeaderTP.text == ""){
                    Alert.show("O campo Tabela de preço do cabeçalho do
orçamento não pode estar vazio.","Campo Tabela de Preço Vazia.");
                }else{
                    oListaProdutos = new produtos();

oListaProdutos.setarComponente('000001',idHeaderTP.text);
                    PopUpManager.addPopUp(oListaProdutos,this , true);
                    PopUpManager.centerPopUp(oListaProdutos);
                    oListaProdutos.setFocus();

oListaProdutos.addEventListener("fechaPopUPProduto",onFechaPopUpProduto);
                }

            }

E isso eu particularmente nao sei mais o que fazer, ta ai o codigo, so
compilar e ver. quando abro esse componente ai, abraço pros tabs e glow dos
campos.

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a