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 Transparente Form verschieben (https://www.delphipraxis.net/72103-transparente-form-verschieben.html)

snapman 25. Jun 2006 18:51


Transparente Form verschieben
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo, habe ein kleines Problem.

Habe mit Delphi 2006 eine Transparente Form erstellt, weil ich keine Border möchte und das ganze selber machen will.
Allerdings kann man das ganze natürlich jetzt nichtmehr verschieben weil die Leiste oben fehlt.

Hat jemand eine Idee wie ich das so machen kann das die ganze Form zum verschieben dient? Das man also wo reinklickt und die Form wegziehen kann.

Habe mal eine Demo angehängt..vielleicht könnt ihr mir helfen

Thorben77 25. Jun 2006 18:54

Re: Transparente Form verschieben
 
Zitat:

Zitat von snapman
Habe mit Delphi 2006 eine Transparente Form erstellt, weil ich keine Border möchte und das ganze selber machen will.
Allerdings kann man das ganze natürlich jetzt nichtmehr verschieben weil die Leiste oben fehlt.

Das leuchtet mir irgendwie nicht ganz ein. Warum machst Du das Fenster transparent, wenn Du keinen Rand haben willst :gruebel: ?

Die Lösung für Dein Problem findet sich mit der DP-Suche: Hier im Forum suchenFenster verschieben.
Luckie hat dazu z.B. was in der Codebibliothek geschrieben: Fenster ohne Titelzeile verschieben.

snapman 25. Jun 2006 19:35

Re: Transparente Form verschieben
 
Hallo,
danke für die Antwort.
Leider funktioniert die Lösung von Luckie nicht ganz.
Ich kann die Form zwar ein paar mal verschieben, aber danach geht es plötzlich nichtmehr.

Woran kann das liegen?

//EDIT

habe einfach den Teil

if (Message.Result = htClient) and
(ControlAtPos(Point(Message.xPos, Message.yPos), True, True) <> nil)
...

entfernt, nun gehts

snapman 30. Jun 2006 21:02

Re: Transparente Form verschieben
 
So ein mist, jetzt ingoriert Delphi einfach Klicks auf TImages, was ja auch logisch ist.

Hm hat da jemand ein Workaround?

MCXSC 4. Feb 2007 01:32

Re: Transparente Form verschieben
 
Auch wenns alt ist :) Hier das "Workaround":

Delphi-Quellcode:
procedure TForm1.Image1MouseDown
   (Sender: TObject; Button: TMouseButton;
   Shift: TShiftState; X, Y: Integer) ;
begin
   ReleaseCapture;
   SendMessage(Form1.Handle, WM_SYSCOMMAND, 61458, 0) ;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:06 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-2025 by Thomas Breitkreuz