Drag & Drop Browse

Drag & Drop Browse

Postby fgondi » Tue Dec 04, 2007 7:48 pm

Hola,

Tengo 2 ventanas mdi y en cada una un browse. a los cuales les tengo permitido el arrastrar y soltar.

Lo que quiera es controlar en que fila del browse se suelta el botón, ya que la variable nRow que se carga en bDropOver cambia dependiendo de donde se encuentre la ventana.
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Postby Antonio Linares » Wed Dec 05, 2007 12:23 am

Fernando,

Los parámetros nRow y nCol son relativos al control en donde se inicia la operación de arrastrar y soltar, por lo que has de convertir las coordenadas (relativas) de un control a las coordenadas (relativas) del otro:

local aPoint := { nRow, nCol }

aPoint = ClientToScreen( oBrw1:hWnd, aPoint } // convierte a absolutas
aPoint = ScreenToClient( oBrw2:hWnd, aPoint ) // convierte a relativas
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42159
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby fgondi » Wed Dec 05, 2007 8:07 am

Antonio,

Muchas gracias, funciono perfectamente.

Una vez que aplique lo que comentas tenia un problema en determinadas posiciones de las ventanas, pero en este post indicabas como resolverlo:
http://fivetechsoft.com/forums/viewtopic.php?t=8872&highlight=drag

Code: Select all  Expand view  RUN
  if nRow > 32000
    nRow = - ( 65535 - nRow )
  endif   
  if nCol > 32000
    nCol = - ( 65535 - nCol )
  endif   
  aPoint := {nRow, nCol}
  aPoint = ClientToScreen( oBrw1:hWnd, aPoint } // convierte a absolutas
  aPoint = ScreenToClient( oBrw2:hWnd, aPoint ) // convierte a relativas
Un saludo
Fernando González Diez
ALSIS Sistemas Informáticos
User avatar
fgondi
 
Posts: 694
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España

Postby Antonio Linares » Wed Dec 05, 2007 8:53 am

Fernando,

Bien! :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42159
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 6 guests