AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Formular (Zur Laufzeit erzeugt) bring die Mainform in den Vordergrund
Thema durchsuchen
Ansicht
Themen-Optionen

Formular (Zur Laufzeit erzeugt) bring die Mainform in den Vordergrund

Ein Thema von Hobbycoder · begonnen am 6. Mär 2025 · letzter Beitrag vom 10. Mär 2025
Antwort Antwort
Hobbycoder

Registriert seit: 22. Feb 2017
1.002 Beiträge
 
#1

AW: Formular (Zur Laufzeit erzeugt) bring die Mainform in den Vordergrund

  Alt 10. Mär 2025, 09:13
Hi,
soweit funktioniert das perfekt, nur ein Problem taucht plötzlich auf: Die Fenstergröße verändert sich von allein.
Das Fenster in der IDE ist Height: 599 und Width: 568.
Nach dem es in der Methode (s.unten) erzeugt und angezeigt wird ist Height: 1014 und Width: 1920.
An keiner Stelle wird die Größe der Form im Code bearbeitet oder sonst was. Lediglich die Position.
Woran könnte das liegen? Ich könnte zwar dann im Code der Zielform die Größe anpassen, jedoch möchte ich ungerne statische Information fest im Code verankern.

Delphi-Quellcode:
  if not Assigned(frmKundendaten) then
  begin
    frmKundendaten:=TfrmKundendaten.Create(self);
    frmKundendaten.OnMoved:=OnKundendatenWindowMoved;
    frmKundendaten.OnFinished:=OnKundendatenWindowsFinished;
    frmKundendaten.lblKundenname.Caption:=edtKundenname.Text;
    SetWindowLong(frmKundendaten.Handle, GWL_HWNDPARENT, Self.Handle);
    frmKundendaten.Show;
    frmKundendaten.Left:=self.Left+grpKundendaten.Left+grpIntern.Left+btnKundendaten.Left;
    frmKundendaten.Top:=self.Top+grpKundendaten.Top+grpIntern.Top+btnKundendaten.top+(btnKundendaten.Height*2);
  end;
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.989 Beiträge
 
Delphi 12 Athens
 
#2

AW: Formular (Zur Laufzeit erzeugt) bring die Mainform in den Vordergrund

  Alt 10. Mär 2025, 09:30
Du könntest z.B. einen Haltepunkt auf OnResize setzen, um zu sehen, wo die Änderung herkommt.

Wenn das nicht klappt (während csLoading wird das Event noch nicht ausgelöst, aber ich denke nicht, dass das der Fall ist), kannst du SetBounds überschreiben und dort den Haltepunkt setzen.

Du kannst im Haltepunkt in den Eigenschaften als Bedingung die Größe prüfen, damit der Haltepunkt nicht so oft ausgelöst wird, wenn das zu oft ist, um es gut zu debuggen.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.374 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Formular (Zur Laufzeit erzeugt) bring die Mainform in den Vordergrund

  Alt 10. Mär 2025, 09:54
Prüfe mal im Objektinspektor, was du dort bei der Eigenschaft "Position" stehen hast. Vermutlich musst du das auf poDesigned umstellen.
Peter
  Mit Zitat antworten Zitat
Hobbycoder

Registriert seit: 22. Feb 2017
1.002 Beiträge
 
#4

AW: Formular (Zur Laufzeit erzeugt) bring die Mainform in den Vordergrund

  Alt 10. Mär 2025, 10:17
Prüfe mal im Objektinspektor, was du dort bei der Eigenschaft "Position" stehen hast. Vermutlich musst du das auf poDesigned umstellen.
Danke, das war es. Ich hatte es auf poDefault stehen und dachte in meinem jugendlichem Leichtsinn, dass würde reichen
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
Antwort Antwort


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 17:39 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