Einzelnen Beitrag anzeigen

Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#1

Tastedruck (STRG) während Drag&Drop nicht möglich?

  Alt 12. Okt 2005, 12:57
Ach, ist schon blöd wenn man Anfänger ist...

Schon wieder hänge ich fest und finde auch per Suchfunktion kein ähnliches Thema, das mich weiterbringen könnte.

Ich habe einen Drag&Drop-Mechanismus in meinem Programm, der soweit auch funktioniert.
Manuell werden die so betroffenen Elemente von einer Liste in die andere verschoben.

Nun wollte ich wie in vielen Programmen verwendet, die STRG-Taste in Kombination mit einer Drag&Drop-Aktion auswerten, um nicht das Verschieben sondern das Kopieren von Elementen durchzuführen.
(Es erscheint dann ja normalerweise ein Mauscursor mit einem Plus-Zeichen, aber wie genau der Mauscursor aussieht ist erstmal egal, hauptsache er lässt sich ändern)

Ich stelle nur fest, dass jeder Tastendruck während einer Drag&Drop-Aktion unterbunden wird.

Ich habe im Ereignis OnMouseDown und OnMouseMove den Befehl
Delphi-Quellcode:
If (ssCtrl IN Shift) then
 [Quell-Controlelement].DragCursor:= crMultiDrag;
als auch bei TMainform.FormKeyDown den Befehl
Delphi-Quellcode:
If (Key = 17) then // = STRG-Taste
 [Quell-Controlelement].DragCursor:= crMultiDrag;
ausprobiert. (KeyPreview ist auf "True")

Nichts reagiert oder passiert mit dem Cursor. Nur vor der Drag&Drop-Aktion lässt sich der Mauszeiger mit den Funktionen ändern.

Wie kann ich denn noch einen Tastencode abfragen, ohne dass dieser durch die Drag&Drop-Aktion blockiert ist?


Weiß jemand Rat?

Dank und Gruß
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat