Arrastrar y colocar

Arrastrar y colocar hace referencia a las transferencias de datos en las que se usa un mouse u otro dispositivo señalador para especificar el origen de datos y su destino. En una operación típica de arrastrar y colocar, un usuario selecciona el objeto que se va a transferir moviendo el puntero del mouse a él y manteniendo presionado el botón izquierdo o algún otro botón designado para este propósito. Mientras mantiene presionado el botón, el usuario inicia la transferencia arrastrando el objeto a su destino, que puede ser cualquier contenedor OLE. Arrastrar y colocar proporciona exactamente la misma funcionalidad que la copia y pegado del Portapapeles OLE, pero agrega comentarios visuales y elimina la necesidad de menús. De hecho, si una aplicación admite la copia y el pegado del Portapapeles, se necesita poco adicional para admitir la arrastrar y colocar.

Durante una operación de arrastrar y colocar OLE, se usan los tres fragmentos de código independientes siguientes.

Origen del código de arrastrar y colocar Implementación y uso
Interfaz IDropSource
Implementado por el objeto que contiene los datos arrastrados, denominado origen de arrastre.
Interfaz IDropTarget
Implementado por el objeto destinado a aceptar la colocación, denominada destino de colocación.
Función DoDragDrop
Implementado por OLE y usado para iniciar una operación de arrastrar y colocar. Una vez que la operación está en curso, facilita la comunicación entre el origen de arrastre y el destino de colocación.

Las interfaces IDropSource e IDropTarget se pueden implementar en un contenedor o en una aplicación de objeto. El rol de destino de arrastrar origen o colocar no se limita a ningún tipo de aplicación OLE.

La función OLE DoDragDrop implementa un bucle que realiza un seguimiento del movimiento del mouse y del teclado hasta que se cancela la arrastrar o se produce una colocación. DoDragDrop es la función clave del proceso de arrastrar y colocar, lo que facilita la comunicación entre el origen de arrastre y el destino de colocación.

Durante una operación de arrastrar y colocar, se pueden mostrar tres tipos de comentarios al usuario.

Tipo de comentarios Descripción
Comentarios de origen
Proporcionado por el origen de arrastre, el comentario del origen indica que los datos se arrastran y no cambian durante el transcurso de la arrastre. Normalmente, los datos se resaltan para indicar que se han seleccionado.
Comentarios del puntero
Proporcionado por el origen de arrastre, los comentarios del puntero indican lo que sucede si el mouse se libera en un momento dado. Los comentarios del puntero cambian continuamente a medida que el usuario mueve el mouse o presiona una tecla modificadora. Por ejemplo, si el puntero se mueve a una ventana que no puede aceptar una colocación, el puntero cambia al símbolo "no permitido".
Comentarios de destino
Proporcionado por el destino de colocación, los comentarios de destino indican dónde se va a producir la colocación.

Para obtener más información, vea Arrastrar responsabilidades de origen.

Transferencia de datos