Si activas el modo Automático de Drag&Drop en ambos componentes, sólo debes obtener el texto que quieres "arrastrar" (este es el paso más complicado) y luego configurar los componentes para que acepten funcionen con el Drag&Drop automático.
Como hablamos de diferentes formularios, puedes usar alguna propiedad para apoyarte en el proceso.
Como he dicho el más complejo es obtener el texto que estás "arrastrando" a partir de las coordenadas del ratón (en un DGBrid); Para eso puedes utilizar un procedimiento como este:
Código Delphi
[-]type
THackGrid = class(TDBGrid);
...
function TForm1.GetDBGridText(AGrid:TDBGrid; X, Y: Integer): string;
var
Cell: TGridCoord;
ActRec: Integer;
begin
Result := string.Empty;
Cell := AGrid.MouseCoord(X, Y);
if dgIndicator in AGrid.Options then
Dec(Cell.X);
if dgTitles in AGrid.Options then
Dec(Cell.Y);
if THackGrid(AGrid).DataLink.Active and (Cell.X >= 0) and (Cell.Y >= 0) then begin
ActRec := THackGrid(AGrid).DataLink.ActiveRecord;
try
THackGrid(AGrid).DataLink.ActiveRecord := Cell.Y;
Result := AGrid.Columns[Cell.X].Field.AsString;
finally
THackGrid(AGrid).DataLink.ActiveRecord := ActRec;
end;
end;
end;
A partir de ahí es utilizar una propiedad para pasar ese TEXTO al segundo formulario, y configurar ambos componentes con el Drag&Drop automático.
En este ejemplo te lo muestro con cualquier texto, pero podrías hacer que para cualquier columna, te devuelva por ejemplo, siempre el código de empleado (si te interesa).
Te adjunto el ejemplo con el código completo y lo subo al FTP:
http://terawiki.clubdelphi.com/Delph...DropDBGrid.zip