Einzelnen Beitrag anzeigen

Benutzerbild von Pichel
Pichel

Registriert seit: 25. Feb 2005
Ort: Kassel
65 Beiträge
 
Delphi 7 Professional
 
#5

Re: DragDrop zwischen Controls bei OnClick und PopUpMenü

  Alt 3. Jan 2006, 23:33
Hab jetzt mal auf die Schnelle rumgespielt:

Delphi-Quellcode:
var myButton : TObject;

procedure TaForm.btMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (Sender.ClassType = TButton)
  and (Button = mbLeft) then begin
    myButton := Sender;
  end;
end;

procedure TaForm.btMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (Sender.ClassType = TButton)
  and (Button = mbLeft) then begin
    if myButton <> FindDragTarget((Sender as TControl).ClientToScreen(Point(X, Y)), True) then
    begin
      // DragDrop
    end else begin
      // Click
      OnClick(Sender);
    end;
  end;
end;
Muß nur noch den Cursor wechseln, am besten wohl während des onMouseMove.
Grüße aus Kassel.

Konfuzius sprach: Etwas lernen und sich immer wieder darin üben - schafft das nicht auch Befriedigung?
  Mit Zitat antworten Zitat