Saltar para o conteúdo principal
Versão: 20 R7

On Drag Over

CodePode ser chamado porDefinição
21Área 4D Write Pro - Botão - Grade de botões - Caixa de seleção - Lista suspensa - Lista Hierárquica - Entrada - Caixa de Lista - Coluna de caixa de lista - Botão de imagens - Menu de imagens pop-up - Área de Plug-in - Indicadores de progresso - Botão de Rádio - Régua - Spinner - Splitter - Stepper - Controle de tabulaçãoOs dados podem ser largados sobre um objeto

Descrição

O evento Ao Arrastar Para é repetidamente enviado para o objeto de destino quando o ponteiro do mouse é movido sobre o objeto. Em resposta a este evento, normalmente:

  • Obtenha os dados e assinaturas encontrados no pasteboard (via o comando GET PASTEBOARD DATA).
  • Dependendo da natureza e do tipo de dados na área de transferência, você aceita ou rejeita o arrastar e soltar.

Para aceitar a arraste, o método objeto de destino deve retornar 0 (zero). Para rejeitar o arraste, o método objeto deve retornar -1 (menos um). Durante um evento Ao Arrastar Exterior, o 4D trata o método do objeto como uma função. Se nenhum resultado for devolvido, 4D assume que o arrasto é aceite.

Se aceitar o arrastamento, o objeto de destino é realçado. Se rejeitar o arrastamento, o destino não é realçado. Aceitar a ação de arrastar não significa que os dados arrastados serão inseridos no objeto de destino. Isso significa apenas que se o botão do mouse for solto neste ponto, o objeto de destino aceitaria os dados arrastados e o evento On Drop seria disparado.

Se você não processar o evento On Drag Over para um objeto soltável, esse objeto será destacado para todas as operações de arrastar, não importa qual seja a natureza e o tipo dos dados arrastados.

O evento On Drag Over é a maneira pela qual você controla a primeira fase de uma operação de arrastar e soltar. Você não apenas pode testar se os dados arrastados são de um tipo compatível com o objeto de destino e então aceitar ou rejeitar o arrasto; mas também pode notificar simultaneamente o usuário deste fato, pois o 4D ressalta (ou não) o objeto de destino com base na sua decisão.

O código que manipula um evento 'On Drag Over' deve ser curto e executar rapidamente, porque esse evento é enviado repetidamente para o objeto de destino atual, devido aos movimentos do mouse.

Exemplo

//Destination object method
#DECLARE : Integer
If(Form event code=On Drag Over)
//returns 0 by default
...
If($DataType=Is picture)
return -1
End if
...
End if

Veja também

On Begin Drag Over