Buenos días Francisco
En cuanto tenga algo realmente funcional, te lo paso con mucho gusto.
En realidad, para hacer lo que quería, he tenido que crear una clase nueva en base a la clase TBitmap.
Ya he conseguido bastantes cosas de las que necesito, pero básicamente es crear falsas ventanas que contienen una imagen, para las pruebas son imágenes de colores
planos: verde, rojo, naranja, etc....
Estas imágenes tienen un tamaño pero están contenidas en un objeto de tamaño menor, por tanto se mueven arriba y abajo. Para saber por donde estoy he creado un nuevo control tipo SCROLLBAR (en blanco mas estrecho de lo habitual y con el tamaño proporcional: thumbos )
Al situar el ratón por cada control, ese control toma el mando (incluso si está contenido en otro)
Las imágenes o cuadros de colores ya se mueven, drag&drop, con el siguiente código :
IF oWnd:ClassName()="TBITMAPINF"
::bRClicked:= { || ( ::lInfinito:=.f., ::Hide(), ::oWnd:lDrag:=.t. ) }
::oWnd:blDblClick := { || ::oWnd:lDrag:=.f., ::lInfinito:=.t., ::Show() }
ENDIF
Pero estéticamente no me acaba de gustar.
Te pongo unas imágenes, pero sería mejor con un video. (no se que herramienta utilizar para grabarlo)
ANTES DE MOVER
DURANTE EL MOVIMIENTO
DESPUES