IntroduçãoComo a quantidade de pedidos para continuar falando sobre Flash Forms, foi grande, nesta matéira abordarei sobre a interação entre componentes, baseando no famoso drag-drop. Pré-requisitoPara a construção desta aplicação foi utilizado o ColdFusion MX 7. ObjetivoObservar a construção de Drag-Drop entre componentes ConceitosFundamentalmente está baseado na utilização do método addEventListener que já estudamos em outra matéria, conjulgado com eventos pouco utilizados como dragEnter, dragOver, dragExit, dragDrop, dragComplete e ainda a propriedade dragEnabled. ConteúdoPrimeiro construimos um flash form comun como a seguinte. Flash Form este, construido com o seguinte script: drag_drop_lixeira01.cfm <cfform format=”flash” name=”form” onload=”initDragDrop();”> <cfformitem type=”script”> <cfformgroup type=”horizontal” width=”300″> <cfselect name=”lista” width=”100″ size=”4″ > <cfformitem type=”spacer” /> <cfgrid name=”lixeira” width=”34″ rowheaders=”no” colheaders=”no” rowheight=”50″ height=”55″> </cfformgroup> </cfform> E com este script já podemos arrastar os dados da lista, isto apenas porque alteramos o valor da propriedade dragEnabled do componente list. O que faremos agora é permitir que a lixeira aceite um arrasto sobre ela, e isto é conseguido no evento dragEnter da lixeira. drag_drop_lixeira02.cfm <cfform format=”flash” name=”form” onload=”initDragDrop();”> <cfformitem type=”script”> lixeira.addEventListener(‘dragEnter’ , dragEnterEvent ); } function dragEnterEvent(event){ </cfformitem> <cfformgroup type=”horizontal” width=”300″> <cfselect name=”lista” width=”100″ size=”4″ > <cfformitem type=”spacer” /> <cfgrid name=”lixeira” width=”34″ rowheaders=”no” colheaders=”no” rowheight=”50″ height=”55″> </cfformgroup> </cfform> Onde o resultado será um pouco diferente do primeiro, repare. E por fim excluiremos os dados arrastados para a lixeira, quando o mouse é liberado sobre ela, para isto nos utilizaremos do evento dragComplete do componente list. drag_drop_lixeira03.cfm <cfform format=”flash” name=”form” onload=”initDragDrop();”> <cfformitem type=”script”> lista.addEventListener(‘dragComplete’, dragCompleteEvent); } function dragCompleteEvent(event){ </cfformitem> <cfformgroup type=”horizontal” width=”300″> <cfselect name=”lista” width=”100″ size=”4″ > <cfformitem type=”spacer” /> <cfgrid name=”lixeira” width=”34″ rowheaders=”no” colheaders=”no” rowheight=”50″ height=”55″> </cfformgroup> </cfform> ConclusãoCom este conceito simples, você pode construir aplicações mais complexas, e explorar os demais eventos de um Drag-Drop. – |
FormatCF(new Array(\’drag_drop_lixeira01.cfm\’,\’drag_drop_lixeira02.cfm\’,\’drag_drop_lixeira03.cfm\’));




ShareThis
Muito bom meu camarada….obrigado …abraços