Bonjour,
Je souhaiterai mettre en place un sytème de Drag & Drop dans un même DBGrid pour modifier l'ordre des pièces.
Par exemple, si j'ai 2 lignes et que je mets la 1ère à la place de la 2ème, je souhaiterai échanger leurs id.
J'avais trouvé un exemple mais je bloque à la fin, je pense il faudrait que je fasse un update mais il faudrait que je fasse un refresh aussi enfin voilà le code :
Merci d'avance pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 procedure TF_Operation.CRDB_PiecesDragDrop(Sender, Source: TObject; X, Y: Integer); var gc : TGridCoord; ordre : Integer; begin gc := CRDB_Pieces.MouseCoord(X,Y); if (gc.X > 0) AND (gc.Y > 0) then begin if DM_Operation.Q_ChargerPiecesOpe.RecordCount = 0 then exit; ordre := DM_Operation.Q_ChargerPiecesOpePIE_ID.AsInteger; { with CRDB_Pieces do begin DataSource.DataSet.MoveBy (gc.Y - Row); DataSource.DataSet.Edit; Columns.Items[-1 + gc.X].Field.AsInteger := ordre; end; } end; end;
Partager