Metainformationen zur Seite

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
dev:code:dragndrop [2026/07/12 05:24] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1dev:code:dragndrop [2026/07/12 05:24] (aktuell) – ↷ Seite von code:dragndrop nach dev:code:dragndrop verschoben Harald Schmid
Zeile 1: Zeile 1:
 +====== Drag & Drop ======
 +
 +  * Um das Drag&Drop von Dateien auf ein Modul zu aktivieren, muss man im Modul TinsightsModuleMain.Create **FInfo.AcceptFiles** auf True setzen.
 +  * Die auf das Formular gedroppten Dateien können dann in der override-Methode <code>**procedure FilesDropped(const mText: string); override;**</code> ausgewertet werden.
 +
 +===== Beispielcode =====
 +
 +<code>
 +procedure TinsightsModuleMain.FilesDropped(const mText: string);
 +begin
 +  // direkt im Module Code ausführen oder
 +  // den Event OnFilesDropped des formModuleBase (override im eigentlichen Formular) ausführen
 +  if assigned(FConfigForm.OnFilesDropped) then
 +    FConfigForm.OnFilesDropped(mText);
 +end;
 +</code>
 +
 +Im ConfigForm kann man dann in InitVars dem OnFilesDropped eine eigene Methode zuweise:
 +
 +<code>
 +procedure TformConfigForm.InitVars;
 +begin
 +  inherited;
 +  OnFilesDropped := FilesDropped;
 +end;
 +
 +procedure TformConfigForm.FilesDropped(const mText: string);
 +begin
 +  CodeSite.Send(csmGreen, 'mText', mText);
 +  hsSList(mText, #13#10).ForEachI(procedure(const mStr: string; mInt: Integer)
 +    begin
 +      CodeSite.Send(mInt.ToString, mStr);
 +    end);
 +end;
 +</code>
 +