Entao... tive um problema parecido, mas era com a tree.
Eu precisava validar o "galho" da tree... se ele "aceitava ou nao" objetos
do tipo do node q tinha sido "dragado".
Essa maldita linha nunca sumia... e além do mais, esse processo de validacao
numa tree não dava certo pq a tree usa sempre o mesmo dragSource para todos
os itens arrastados ("treeItem"). E minha tree tinha vários tipos de galhos
e nodes, conforme o tipo de objeto.Sabe entao qual foi a solucao ideal? - Desabilitar o drag da tree. - Tratar os drags/drops diretamente nos TreeRenderers usando a DragManager. - Dessa forma conseguir fazer o processo de validacao como queria e tratar o drag-n-drop do jeito que queria. Se for pra esse lado, só precisa tomar cuidado na criacao dos renderers para q eles nao se tornem um gargalo na hora de exibir listas grandes. []s Em 6 de abril de 2010 18:42, RafaelViana <[email protected]> escreveu: > Deixa eu tentar explicar: > > Quando se tem um componente que já possui o drag'n drop habilitado por > padrão, se você habilitar as propriedades dragEnabled de uma lista e > dropEnabled da outra lista, vai permitir você arrastar itens da 1° > para a 2°. > Porém, ou item o item continuará na 1° e passaria a existir também na > 2°, com a propriedade dragMoveEnabled ele iria deixar de existir na 1° > e passaria a existir apenas na 2°. > Mas isso não entra muito na aplicação que fiz. > > ------------- > > A minha situação está assim, resumidamente. > > Tenho três datagrids que contem listas de itens com uma propriedade > que guarda o valor de excesso deste. > > Lista 1 > Produto | Valor | Excesso > 1 10,00 2,00 > 2 15,00 1,00 > 3 17,00 0,50 > ... > > E faço o drop dos excessos em listas que armazenarão todos os > excessos. > > Produto | Excesso > 1 2,00 > 2 0,50 > > Também pode haver mais de uma lista: (destino) > > Produto | Excesso > 2 0,50 > 3 0,50 > > E a lista 1 de produtos fica assim: (jogo os excessos para algum > destino) > > Produto | Valor | Excesso > 1 10,00 0,00 > 2 15,00 0,00 > 3 17,00 0,00 > ... > > Então, eu não jogo o objeto inteiro dentro do grid e sim o valor, e > nem sempre é o valor integral.Posso dividir em mais de um destino. > Esse agrupamento e manipulação das informações faço no Java (por > possuir uma perfomance maior) > > Então como fica a logistica: > > Ao fazer o drop na lista de destino (dos excessos), eu abro uma window > na qual possue todos os objetos selecionado e um itemEditor para que > eu possoa selecionar qual valor será passado adiante (já que nem > sempre é integral), e após concluir as ações na window eu chamo um > método do java que irá calcular todos os valores e recriar as listas. > > Como eu sempre recrio a lista com os novos valores, não preciso que > fazer o moveEnabled. NEM POSSO, porque são objetos diferentes e daria > erro na labelFunction. > > Se eu tivesse a propriedade habiltada iria mover os itens para a grid, > antes de abrir ou durante as minhas ações na janela. > > Pensei que tivesse algum método que retirasse esse graphic. > > Se não houver (como acho que não tem). > > Vou implementar esse processo do drag'n drop manualmente (sem utilizar > as propriedades dragEnabled e dropEnabled), acho que assim ocorrerá > tudo corretamente. > > Obrigado pela atenção, > E se houver alguma maneira de apagar aquela linha seria bem útil :D > > On 6 abr, 18:19, Gabriela Trindade Perry <[email protected]> > wrote: > > como assim "o item faz o drop no grid"? > > Será que não é o caso de usar as propriedades moveenable, copyenable e > > etc (as mesmas que pediste para setar como true no exemplo do > > flexexamples). > > as únicas vezes em que usei prevent default para drag é quando a > > operação era em containers. quando é em lists não imagino porque usar. > > -- > 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 > > To unsubscribe, reply using "remove me" as the subject. > -- Mario Junior http://blog.mariojunior.com/ @mariojunior -- 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
