Olá, estou desenvolvendo um sisteminha em flex mas to com uns
problemas
Ele tem 2 datagrids Campos disponiveis e Campos selecionados
(camposD_dg, camposS_dg), eu fiz um drag and drop do primeiro para o
segundo campo e consegui fazer tb uma fucaozinha pra remover os itens
adicionados no segundo
Problemas:
1 - Mas o que eu preciso eh que o que o segundo datagrid só aceite uma
vez cada item arrastado do primeiro, pois nao pode ter itens
duplicados. Para esse problema tanto faz se ele simplesmente nao
aceitar um item duplicado ou cada vez que aceitar um item remover o
mesmo do primeiro.
2 - Tem como eu pegar um item no segundo datagrid e arrastar pra
posicao que eu quiser, ex: quero o campo nome depois o endereco,
depois o cidade ( uma espécie de drag and drop nele mesmo pra
reorganizar os dados )
Código até agora:
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
// simulacao dos dados do datagrid
[Bindable] private var campos:ArrayCollection = new
ArrayCollection(
[
{campo: "nome"}, {campo: "email"},
{campo: "telefone"},
{campo: "endereco"}, {campo: "cidade"},
{campo: "cep"}
]
)
// funcao p/ remocao do item selecionado
public function removeItem():void
{
camposS_dg.dataProvider.removeItemAt(camposS_dg.selectedIndex);
}
]]>
</mx:Script>
<mx:DataGrid id="camposD_dg" dataProvider="{campos}"
allowMultipleSelection="true" dragEnabled="true"
width="200" horizontalCenter="-120" verticalCenter="-40"
height="160">
<mx:columns>
<mx:DataGridColumn headerText="Campos disponíveis"
dataField="campo"/>
</mx:columns>
</mx:DataGrid>
<mx:DataGrid id="camposS_dg"
dropEnabled="true"
width="200" horizontalCenter="120" verticalCenter="-40"
height="160">
<mx:columns>
<mx:DataGridColumn headerText="Campos selecionados"
dataField="campo"/>
<mx:DataGridColumn headerText="" width="16">
<mx:itemRenderer>
<mx:Component>
<mx:Image click="parentDocument.removeItem();"
source="@Embed('assets/delete.png')" />
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
</mx:columns>
</mx:DataGrid>
Se alguém puder me dar uma luz eu agradeço
[]'s
Ricardo
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---