Ver Mensaje Individual
  #6  
Antiguo 23-07-2013
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Reputación: 19
ElDioni Va por buen camino
Hola, yo hice algo parecido hace un tiempo, lo primero que te diría es que te instalaras el SMDBGrid que es gratuito, ¿porqué?, porque si no recuerdo mal el DBGrid normal que lleva delphi no disparaba el código en el MouseDown y había que programar un parche para conseguirlo, además el SMDBGrid tiene más opciones que el DBGrid que pueden resultarte útiles.

Que hacía yo, en el MouseDown, capturaba el orden que tenía el registro seleccionado en una variable, permitía en el DBGrid el Drag&Drop para que aceptara el arrastre de registros dentro del mismo DbGrid. Cuando hacía el Drop capturaba en otra variable el registro en el que me había posicionado, había que saber si el registro lo había movido hacia una posición superior o inferior, a partir de ahi, si lo había movido a una posición superior, tenía que hacer un update de +1 en el orden, a todos los registros que fueran mayor o igual que el registro donde quería colocar el nuevo registro hasta los que fueran menor que el registro original que había movido, algo así.

Te darás cuenta de que tienes que controlar más cosas, tabla vacía, un solo registro, orden de los nuevos registros, etc.

Espero haberte ayudado en algo.

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
Responder Con Cita