Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina



Luiz Henrique de Angeli

luizdeangeli@gmail.com


Inserindo dados em DataGrid usando ArrayCollection com PopUpManager

segunda-feira, 24 de agosto de 2009

Fiz um outro exemplo utilizando a inserção em um ArrayCollection com PopUpManager:
O DataGrid está ligado neste ArrayCollection, desta forma as informações são atualizada quando inserimos mais dados no ArrayCollection.

Principal.mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"
verticalAlign="middle">
<mx:TitleWindow styleName="opaquePanel" width="567" title="Cadastro de Pessoas">
  <mx:Button label="Adicionar" click="adicionar()"/>
  <mx:DataGrid id="dtgPessoas" width="100%" dataProvider="{dtpListaPessoa}">
   <mx:columns>
    <mx:DataGridColumn headerText="Código" dataField="codigo" width="100" textAlign="center"/>
    <mx:DataGridColumn headerText="Nome" dataField="nome"/>
    <mx:DataGridColumn headerText="Idade" dataField="idade" width="100" textAlign="center"/>
   </mx:columns>
  </mx:DataGrid>
 
   <mx:Box horizontalAlign="right" width="100%">
   <mx:Button label="Excluir" enabled="{dtgPessoas.selectedIndex!=-1}" click="{dtpListaPessoa.removeItemAt(dtgPessoas.selectedIndex)}"/>
  </mx:Box>
 </mx:TitleWindow>

<mx:Script>
 <![CDATA[
 import mx.controls.Alert;
 import mx.events.CloseEvent;
 import mx.managers.PopUpManager;
 import mx.collections.ArrayCollection;

 [Bindable] private var dtpListaPessoa  : ArrayCollection = new ArrayCollection();
 [Bindable] private var janela   : Pessoa;

  private function adicionar():void
  {
    janela = new Pessoa();
    janela.addEventListener("closePessoa",closePessoa);
    PopUpManager.addPopUp(janela,this,true);
    PopUpManager.centerPopUp(janela);
  }

  private function closePessoa(e : Event):void
  {  
   dtpListaPessoa.addItem(
   {
   codigo : janela.txiCodigo.text,
   nome  : janela.txiNome.text,
   idade  : janela.nmsIdade.value
   });
  
   PopUpManager.removePopUp(janela);
  }
 
 ]]>
</mx:Script>
</mx:Application>


Pessoa.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="500" title="Cadastro de Pessoa" styleName="opaquePanel"
 showCloseButton="true" close="PopUpManager.removePopUp(this);">
 
<mx:Metadata>
 [Event("closePessoa")]
</mx:Metadata>

 
 <mx:Form width="100%">
  <mx:FormItem label="Código" width="100%">
   <mx:TextInput width="68" id="txiCodigo"/>
  </mx:FormItem>
  <mx:FormItem label="Nome" width="100%">
   <mx:TextInput width="350" id="txiNome"/>
  </mx:FormItem>
  <mx:FormItem label="Idade" width="100%" direction="horizontal">
   <mx:NumericStepper maximum="200" minimum="0" id="nmsIdade"/>
  </mx:FormItem>
 </mx:Form>
 <mx:ControlBar horizontalAlign="right">
 <mx:Button label="Adicionar" click="dispatchEvent(new Event('closePessoa'))"/>
 </mx:ControlBar>

<mx:Script>
 <![CDATA[
  import mx.managers.PopUpManager;
 ]]>
</mx:Script>

</mx:TitleWindow>

0 comentários:


Submarino.com.br
Submarino.com.br