Você está adicionando no array destino e não está removendo do array origem.

usa o seuArray.removeItemAt(index);

=D

Em 2 de junho de 2010 16:37, Sérgio Fantin
<[email protected]>escreveu:

> Olá pessoal,
>
> estou implementando um pickList em flex usando datagrids. O problema é o
> seguinte...
>
> Quando eu clico em algum item do lado esquerdo e arrasto pra lista da
> direita usando o drag'n'drop, este item sai da direita e vai pra esquerda.
>
> Mas quando eu clico no botão que chama uma função minha ele vai pra
> direita, mas continua do lado esquerdo. Gostaria que ela fosse movido do
> mesmo jeito que acontece quando uso drag'n'drop.
>
> Segue:
>
> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
> layout="absolute" width="1120" height="664">
>
>     <mx:RemoteObject id="servico" destination="pessoaServico"
> showBusyCursor="true" result="carregaResultado(event)"/>
>
>     <mx:TitleWindow x="159" y="38" width="748" height="627"
> layout="absolute"
>         close="PopUpManager.removePopUp(this);"
>         title="Adicionar contato"
>         showCloseButton="true"
>         creationComplete="init()">
>
>         <mx:Script>
>             <![CDATA[
>                 import mx.collections.ArrayCollection;
>                 import mx.controls.List;
>                 import mx.managers.PopUpManager;
>                 import objetos.Pessoa;
>                 import mx.rpc.events.ResultEvent;
>                 import mx.controls.Alert;
>                 import mx.rpc.events.FaultEvent;
>
>                 [Bindable]
>                 private var message:String;
>
>                 [Bindable]
>                 private var pessoas:ArrayCollection = new
> ArrayCollection();
>
>                 [Bindable]
>                 private var pessoasDisponiveis:ArrayCollection = new
> ArrayCollection();
>
>                 [Bindable]
>                 private var pessoasSelecionadas:ArrayCollection = new
> ArrayCollection();
>
>                 [Bindable]
>                 private var pessoa:Pessoa = new Pessoa();
>
>                 private function init():void{
>                     loadPessoas();
>                 }
>
>                 private function carregaResultado(ev:ResultEvent):void {
>                     pessoas = ev.result as ArrayCollection;
>                     pessoasDisponiveis = pessoas;
>                 }
>
>                 public function loadPessoas():void {
>                     servico.getPessoas();
>                 }
>
>                 public function adicionarPessoa():void{
>
> pessoasDisponiveis.getItemAt(dg_pessoas_disponiveis.selectedIndex);
>
> pessoasSelecionadas.addItem(pessoasDisponiveis.getItemAt(dg_pessoas_disponiveis.selectedIndex));
>                 }
>
>                 public function removerPessoa():void{
>
> pessoasSelecionadas.getItemAt(dg_pessoas_selecionadas.selectedIndex);
>
> pessoasDisponiveis.addItem(pessoasSelecionadas.getItemAt(dg_pessoas_selecionadas.selectedIndex));
>                 }
>
>                 ]]>
>         </mx:Script>
>
> <mx:DataGrid id="dg_pessoas_disponiveis" x="98" y="62" width="515"
> height="93" dropEnabled="true" dragMoveEnabled="true" dragEnabled="true"
> allowDragSelection="true" allowMultipleSelection="true"
> dataProvider="{pessoasDisponiveis}">
>             <mx:columns>
>                 <mx:DataGridColumn headerText="Nome " dataField="nome"/>
>                 <mx:DataGridColumn headerText="CPF " dataField="cpf"/>
>                 <mx:DataGridColumn headerText="E-mail " dataField="email"/>
>                 <mx:DataGridColumn headerText="Celular "
> dataField="telefoneCelular"/>
>             </mx:columns>
>         </mx:DataGrid>
>
>         <mx:Button x="279" y="197" label="v" click="adicionarPessoa()"/>
>         <mx:Button x="385" y="197" label="^" click="removerPessoa()"/>
>
>         <mx:DataGrid id="dg_pessoas_selecionadas" dropEnabled="true"
> dragEnabled="true" dragMoveEnabled="true" allowDragSelection="true"
> allowMultipleSelection="true" x="98" y="249" width="515" height="90"
> dataProvider="{pessoasSelecionadas}">
>             <mx:columns>
>                 <mx:DataGridColumn headerText="Nome " dataField="nome"/>
>                 <mx:DataGridColumn headerText="CPF " dataField="cpf"/>
>             </mx:columns>
>         </mx:DataGrid>
>
>
>
> --
> Sérgio Fantin
> http://serjaum.wordpress.com
>
> --
> 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




-- 
______________________

Atenciosamente,

Rafael Comim

-- 
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