Thema: Delphi Drag and Drop im TDBGrid

Einzelnen Beitrag anzeigen

barnti

Registriert seit: 15. Aug 2003
Ort: Mal hier mal da...
689 Beiträge
 
Delphi 7 Enterprise
 
#1

Drag and Drop im TDBGrid

  Alt 1. Mär 2004, 15:51
Hi,

ich würde gern in meinen TDBGrids 'drag and drop' verwenden, und so neue Datensätze in einer Tabelle anlegen. Leider habe ich mit den folgenden Versuchen keinen Erfolg:

Delphi-Quellcode:
// Drag beginnen
procedure TForm_Main.DBGrid_MasterMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  if Button =mbleft then DBGrid_Master.BeginDrag(false);
end;

// Drag and Drop akzeptieren?
procedure TForm_Main.DBGrid_DetailDragOver(Sender, Source: TObject; X,
  Y: Integer; State: TDragState; var Accept: Boolean);
begin
  if Source is TDBGrid then
  begin
    accept:= true;

  end;

end;

// Erfolgreicher Drag-and-Drop-Vorgang
procedure TForm_Main.DBGrid_DetailDragDrop(Sender, Source: TObject; X,
  Y: Integer);
begin
  if Source is TDBGrid then
    begin
      showmessage('Dragdrop');
    end;
end;
// Fehlschlag
procedure TForm_Main.DBGrid_DetailEndDrag(Sender, Target: TObject; X,
  Y: Integer);
begin
  if Target= NIL then
  MessageBeep(0);
end;
Leider funktioniert der Vorgang nur, wenn ich den in einem freien Bereich des Grid mit dem D&D beginne. Ich möchte aber auf einem der Datensätze beginnen, so dass dieser der aktuelle Datensatz wird und ich diesen dann beim D&D verwenden kann. Wie kann ich dies realisieren? Kann jemand helfen?

Gruß,

Barnti
  Mit Zitat antworten Zitat