AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

einfaches Drag & Drop und MouseUp

Ein Thema von Alex_ITA01 · begonnen am 13. Jun 2017 · letzter Beitrag vom 14. Jun 2017
 
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

einfaches Drag & Drop und MouseUp

  Alt 13. Jun 2017, 14:50
Hallo,
ich habe schon zum Drag&Drop einiges gelesen und mitbekommen, dass es dann Probleme mit dem MouseUp gibt, wenn man dieses auch benötigt.

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Label1: TLabel;
    ListBox1: TListBox;
    procedure Label1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Label1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
    StartDragging: Boolean;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  StartDragging := False;
end;

procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  StartDragging := True;
  Label1.BeginDrag(False, 8);
  StartDragging := False;
end;

procedure TForm1.Label1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if StartDragging then
  begin
    ShowMessage('StartDragging=True');
    Exit;
  end;

  if Button = mbRight then
    ShowMessage('mbRight');

  if Button = mbLeft then
    ShowMessage('mbLeft');
end;

procedure TForm1.ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
  if Sender is TLabel then
  begin
    ListBox1.Items.Add(TLabel(Sender).Caption);
  end;
end;

procedure TForm1.ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  if Sender is TLabel then
    Accept := True
  else
    Accept := False;
end;
Hier mal ein ganz einfaches Beispiel mit einem Label und einer ListBox.
Ich möchte eigentlich, die entsprechende ShowMessage erhalten wenn ich mit der linken oder rechten Maustaste drauf drücke bzw. das entsprechende DragEvent wenn ich es in die ListBox ziehe.

Hat jemand eine Idee wie man das hinbekommt?
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz