Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi JvBitmapButton zur Laufzeit verschieben (https://www.delphipraxis.net/93796-jvbitmapbutton-zur-laufzeit-verschieben.html)

ebber 11. Jun 2007 15:48


JvBitmapButton zur Laufzeit verschieben
 
Hallo

ich habe das gefunden um einen Button zu verschieben

Delphi-Quellcode:

procedure TForm1.BTanMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const
   SC_DragMove = $F012;
begin

   ReleaseCapture;
   SendMessage(TWinControl(Sender).Handle,WM_SysCommand, SC_DragMove, 0);

end;
ich möchte das jetzt aber mit einem JvBitmapbutton machen. Was muss ich da verändern oder geht das so nicht ? Weil so gehts nicht.

MfG

marabu 11. Jun 2007 16:07

Re: JvBitmapButton zur Laufzeit verschieben
 
Hallo,

dieser Button hat kein window handle, da er von TGraphicControl abgeleitet wurde. Setze ihn einfach auf ein Panel (AutoSize = True).

Delphi-Quellcode:
procedure TDemoForm.JvBitmapButtonMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
const
  SC_DragMove = $F012;
begin
  ReleaseCapture;
  with Sender as TGraphicControl do
    SendMessage(Parent.Handle, WM_SysCommand, SC_DragMove, 0);
end;
Grüße vom marabu

ebber 11. Jun 2007 20:41

Re: JvBitmapButton zur Laufzeit verschieben
 
Danke. So gehts :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz