Eigenschaft: DragCursor (TLabel-TList)

Verweis: DragMode DragKind
Uses: StdCtrls
Eingabe: Ein Cursor-Typ
Ausgabe: Der gewählte Cursor-Typ in der Zielkomponente
Funktion: Wählt den Cursor für die Zielkomponente aus.

Beispiel 1

Vorbereitung: Erstellen sie eine IDE Anwendung und ziehen Sie drei TLabel und eine TListBox auf die Form. Wenn sie nicht wissen wie man mehrere Komponenten des gleichen Typs auf die Form bringt, dann schauen sie bitte hier. Erstellen Sie zusätzlich ein OnActivate-Ereignis für die Form. Erstellen Sie zusätzlich ein DragDrop und ein DragOver Ereignis für die ListBox1.

procedure TForm1.ListBox1DragOver(Sender, Source: TObject; X, Y: integer;
  State: TDragState; var Accept: boolean);
begin
  //Alle Label erlauben
  Accept := Source is Tlabel;
end;

procedure TForm1.ListBox1DragDrop(Sender, Source: TObject; X, Y: integer);
begin
  //Alle Label Beschriftungen aufnehmen
  if Source is TLabel then
    ListBox1.Items.Append(TLabel(Source).Caption);
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
  //Alle Beteiligten Komponenten auf Automatik
  Label1.DragMode := dmAutomatic;
  Label2.DragMode := dmAutomatic;
  Label3.DragMode := dmAutomatic;
  Listbox1.DragMode := dmAutomatic;
  //Das Cursor Aussehen im Moment der Ablage
  Label1.DragCursor := crHourGlass;
  Label2.DragCursor := crSizeAll;
  Label3.DragCursor := crHandPoint;
  //Beschriftung
  Label1.Caption := 'Bei Ablage Sanduhr.';
  Label2.Caption := 'Bei Ablage Pfeile.';
  Label3.Caption := 'Bei Ablage Hand.';
end;

Dieses Beispiel ist so ähnlich wie das Beispiel unter DragMode. Das DragMode-Beispiel sollten Sie sich vorher anschauen damit Sie dieses Beispiel besser verstehen. Mit der Festlegung des DragCursor können Sie das Aussehen des Mauszeigers in der Zielkomponente beim ablegen bestimmen. So habe ich hier die drei Label mit verschiedenen Cursor-Typen belegt. Interessant dürfte hier mal eine andere Vorgehensweise des Erlaubten sein ( Accept ). Hier erlauben wird allen Objekten des Typs TLabel, das Ablegen in der Liste. Dies erreichen wir mit dem Is-Befehl.