Hallo!
Vorweg, es ist nicht so wichtig, weil es auch so geht.
Im englischen Forum konnte man mir nicht helfen, so probiere ich es einfach mal hier:
Es gibt 4 Ereignisse, die bei Drag/Hineinziehen von außen in ein RichMemo getriggert werden sollten.
- RichEditStartDrag
- RichEditEndDrag
- RichEditDragDrop
- RichEditDragOver
Aber bei mir wird nichts davon durch das Hineinziehen aktiviert. So kann ich das Drag ins Memo dann auch nicht unterbinden. (Ist bei mir wertlos, weil die Icons im Memo keinen Sinn machen.)
Hat jemand dazu eine Idee?
(Ich habe Laz 4.0, Win 11 mit 64 Bit und das aktuelle Richmemo-Package.)
Grüße
GLR
[GELOEST] Kann Drag in ein RichMemo nicht unterbinden
- GLR
- Beiträge: 5
- Registriert: Di 1. Jul 2025, 15:48
- OS, Lazarus, FPC: Windows 11 (L 4.0 FPC 3.2.2)
- CPU-Target: x64
- Wohnort: München
[Gelöst] Kann Drag in ein RichMemo nicht unterbinden
Zuletzt geändert von GLR am Mi 24. Sep 2025, 07:56, insgesamt 2-mal geändert.
-
- Beiträge: 761
- Registriert: Do 27. Sep 2012, 00:07
- OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
- CPU-Target: x86_64-win64
- Wohnort: Hamburg
Re: Kann Drag in ein RichMemo nicht unterbinden
Die Drap&Drop Events, OnStartDrag, OnEndDrag, OnDragDrop, OnDragOver hat damit nicht zu tun. Die sind LCL-Intern.
RichMemo ist die Kapselung von der RichEdit-Komponente von Windows. Ich denke, dass du WndProc-Funktion von RichMemo einklicken musst und dort es verhindern musst, falls es überhaupt möglich ist.
Ich würde im Internet nach "delphi richedit drag drop unterbinden" suchen oder auf englisch.
Vielleicht RichMemo.ReadOnly auf true setzen.
RichMemo ist die Kapselung von der RichEdit-Komponente von Windows. Ich denke, dass du WndProc-Funktion von RichMemo einklicken musst und dort es verhindern musst, falls es überhaupt möglich ist.
Ich würde im Internet nach "delphi richedit drag drop unterbinden" suchen oder auf englisch.
Vielleicht RichMemo.ReadOnly auf true setzen.
-
- Beiträge: 761
- Registriert: Do 27. Sep 2012, 00:07
- OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
- CPU-Target: x86_64-win64
- Wohnort: Hamburg
Re: Kann Drag in ein RichMemo nicht unterbinden
Hier ich habe gefunden, du musst einfach das machen:
getestet, funktioniert.
Code: Alles auswählen
...
implementation
uses ActiveX;
procedure TForm1.FormCreate(Sender: TObject);
begin
RevokeDragDrop(RichMemo1.Handle);
end;
- GLR
- Beiträge: 5
- Registriert: Di 1. Jul 2025, 15:48
- OS, Lazarus, FPC: Windows 11 (L 4.0 FPC 3.2.2)
- CPU-Target: x64
- Wohnort: München
Re: Kann Drag in ein RichMemo nicht unterbinden
Vielen herzlichen Dank. Es klappt!
Mit der einzigen Änderung:
Ich muß die Zeile unter FormActivate eintragen; bei FormCreate klappt es nicht.
Damit hat das "deutsche Forum" das "englischsprachige" klar geschlagen; dort konnten mir User mit in der Summe über 20.000 Posts nicht die Lösung aufzeigen (https://forum.lazarus.freepascal.org/in ... #msg565801)
Liebe Grüße
GLR
Mit der einzigen Änderung:
Ich muß die Zeile unter FormActivate eintragen; bei FormCreate klappt es nicht.
Damit hat das "deutsche Forum" das "englischsprachige" klar geschlagen; dort konnten mir User mit in der Summe über 20.000 Posts nicht die Lösung aufzeigen (https://forum.lazarus.freepascal.org/in ... #msg565801)
Liebe Grüße
GLR