4D v16.3DRAG AND DROP PROPERTIES |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
DRAG AND DROP PROPERTIES
DRAG AND DROP PROPERTIES
O comando DRAG AND DROP PROPERTIES permite obter informação sobre o objeto fonte quando um evento On Drag Over ou On Drop ocorre para um objeto “complexo” (array, list box ou lista hierárquica). Geralmente, é utilizado DRAG AND DROP PROPERTIES desde dentro do método de objeto do objeto (ou desde uma das subrotinas que chama) para o qual o evento On Drag Over ou On Drop ocorre (o objeto de destino). Importante: os dados podem ser soltados em um objeto de formulário se a propriedade Soltável for selecionada. Igualmente, seu método de objeto deve ser ativado por On Drag Over ou On Drop, para processar estes eventos. Depois da chamada:
Se chama a DRAG AND DROP PROPERTIES quando não há nenhum evento arrastar e soltar, srcObjeto retorna um ponteiro NIL, srcElemento retorna -1 e srcProcesso retorna 0. Conselho: 4D administra automaticamente o aspecto gráfico de arrastar e soltar. Então você deve responder ao evento de maneira apropriada. Nos seguintes exemplos, a resposta é copiar os dados que foram arrastados. De maneira alternativa, pode implementar interfaces de usuário sofisticadas onde, por exemplo, arrastar e soltar um elemento de array de uma janela flutuante faz com que a janela de destino seja preenchida (a janela onde o objeto de destino está localizado) com dados estruturados (como vários campos que originam de um registro único identificado pelo elemento de array fonte). Se utilizar DRAG AND DROP PROPERTIES durante um evento On Drag Over para decidir se o objeto de destino aceita a operação arrastar e soltar, dependendo do tipo ou a natureza do objeto fonte (ou de qualquer outra razão). Se aceitar arrastar e soltar, o método de objeto deve devolver $0:=0. Se não aceita arrastar e soltar, o método de objeto deve devolver $0:=-1. A aceitação ou recusa de arrastar e soltar é refletida na tela, o objeto é ressaltado ou não como destino potencial da operação arrastar soltar. Em vários dos formulários de seu banco, há áreas de rolagem onde você pode querer reordenar manualmente os elementos simplesmente arrastando-os e soltando-os ao interior de cada área. Ao invés de escrever código específico para cada caso, pode implementar um método de projeto genérico que maneje todas as áreas de rolagem. Pode escrever um código como este: ` Método de projeto Manejo arrastar e soltar interno em um array Quando tiver implementado este método de projeto, pode utilizá-lo da seguinte forma: ` Método de objeto da área de rolagem anArray Em vários dos formulários de seu banco, tem áreas de texto editáveis nas quais pode desejar arrastar e soltar dados de várias fontes. Ao invés de escrever código específico para cada caso, pode implementar um método de projeto genérico que maneje todas as áreas de texto editáveis. Pode escrever o método seguinte: ` Método de projeto Tratamento de soltar em variável Texto Quando tiver implementado este método de projeto, pode utilizá-lo desta forma: ` Método de objeto do campo de texto [anyTable]aTextField Se quisermos preencher uma área de texto (por exemplo, uma etiqueta) com os dados arrastados de uma list box. Este é o método de objeto de etiqueta1: Case of Depois é possível realizar a seguinte ação:
Ver também
Arrastar e Soltar
|
PROPRIEDADES
Produto: 4D
HISTÓRIA
Modificado: 4D 2004.2 ARTICLE USAGE
Manual de linguagem 4D ( 4D v16) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||