Delphi-PRAXiS
Seite 3 von 3     123   

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 Fensterposition anzeigen? (https://www.delphipraxis.net/84351-fensterposition-anzeigen.html)

Blackheart 15. Jan 2007 21:27

Re: Fensterposition anzeigen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Also bei Mir funzt es hab mal die Exe angehangen.

mlspider 15. Jan 2007 21:32

Re: Fensterposition anzeigen?
 
Erst mal Danke für Deine Mühen, nur leider ändert sich auch nichts in Deinem Label. Du könntest ja mal das uncompilierte Beispiel posten. Dann wäre es vielleicht eher nachvollziehbarer, wie Du es realisierst.

Danke.

Blackheart 15. Jan 2007 21:36

Re: Fensterposition anzeigen?
 
Dann weiss Ich auch nicht, bei mir funktioniert das tadellos und auch mit den Richtigen Koordinaten.
Wunder :roll:

mlspider 15. Jan 2007 21:38

Re: Fensterposition anzeigen?
 
Poste doch bitte mal das Nicht-Compilierte Projekt. Ich möchte mir mal den Trick von Dir ablauschen.

Blackheart 15. Jan 2007 22:01

Re: Fensterposition anzeigen?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Vieleicht hab Ich auch was missverstanden, beim Verschieben der Form sollen die Top Koordinaten der Form im Label angezeigt werden.

mlspider 15. Jan 2007 22:26

Re: Fensterposition anzeigen?
 
Du hast es völlig richtig verstanden. Jetzt läuft es und kann es nun auch vielmehr für den Left-Wert festlegen, in eine INI speichern. Beim nächsten Start erscheint das Fenster an der verschobenen Position.

Danke an alle. War ja wieder eine schwere Geburt und doch so simpel die Lösung.

Sir Rufo 25. Jan 2007 19:42

Re: Fensterposition anzeigen?
 
Zitat:

Zitat von Hawkeye219
Hallo,

mit ReleaseCapture beendest du die Verarbeitung der Mausnachrichten bis zum nächsten Capture, das MouseUp-Ereignis dürfte also nicht ausgelöst werden. Du könntest aber die Nachricht WM_WINDOWPOSCHANGING im Formular abfangen:

Delphi-Quellcode:
type
  TForm1 = class (TForm)
  private
    procedure WMWindowPosChanging (var Message: TWMWindowPosChanging);
      message WM_WINDOWPOSCHANGING;
  end;

procedure TForm1.WMWindowPosChanging (var Message: TWMWindowPosChanging);
begin
  inherited;
  Label1.Caption:=IntToStr(Top);
end;
Gruß Hawkeye

Also da würde ich ja eher die Nachricht WM_WINDOWPOSCHANGED benutzen, also wenn die Änderung abgeschlossen ist.
Dann ist Formular am Bestimmungsort angekommen und die Werte sind auch verfügbar.

cu

Oliver

xZise 25. Jan 2007 20:53

Re: Fensterposition anzeigen?
 
Zitat:

Zitat von Hawkeye219
Hallo,

mit ReleaseCapture beendest du die Verarbeitung der Mausnachrichten bis zum nächsten Capture, das MouseUp-Ereignis dürfte also nicht ausgelöst werden. Du könntest aber die Nachricht WM_WINDOWPOSCHANGING im Formular abfangen:

Delphi-Quellcode:
type
  TForm1 = class (TForm)
  private
    procedure WMWindowPosChanging (var Message: TWMWindowPosChanging);
      message WM_WINDOWPOSCHANGING;
  end;

procedure TForm1.WMWindowPosChanging (var Message: TWMWindowPosChanging);
begin
  inherited;
  Label1.Caption:=IntToStr(Top);
end;
Gruß Hawkeye


Wegen eines anderen Threads wurde ich hierher gelinkt (thx Hawkeye)...
Dumm nur, dass ich ein Fehler bekomme:
"Nicht deklarierter Bezeichner 'TWMWindowPosChanging'"

Matze 25. Jan 2007 20:56

Re: Fensterposition anzeigen?
 
Ich vermute mal, dass dies in der Unit "Messages" deklariert ist. Hast du diese eingebunden?

xZise 25. Jan 2007 21:03

Re: Fensterposition anzeigen?
 
Ne ^^
Nun funzt es wunderbar! Danke Hawkeye und Matze!


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:03 Uhr.
Seite 3 von 3     123   

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