AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Main.Width und Height

Ein Thema von Willie1 · begonnen am 25. Aug 2020 · letzter Beitrag vom 5. Sep 2020
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.385 Beiträge
 
Delphi 12 Athens
 
#1

AW: Main.Width und Height

  Alt 26. Aug 2020, 11:10
Ignoriert wird es nicht wirklich. Diese Position wird im Show neu verechnet und überschreibt es wieder.

Ein Teil der Positionsberechnung ist schon vorm OnCreate (bei Erstellen/Laden der Form) und en Teil kommt erst beim OnShow dran. (leider nicht alles ideal verteilt)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
698 Beiträge
 
Delphi 10.1 Berlin Starter
 
#2

AW: Main.Width und Height

  Alt 26. Aug 2020, 16:25
Hallo,
im Objekt-Inspektor steht bei MainForm:
Position poScreenCenter
WindowsState wsNormal
Width 637 Height 900
OnCreate-Event lese ich die gespeicherten Werte aus, sonst Default setze MainForm.Width und MainForm.Height. Ich habe sie mit dem Debugger überprüft.
Delphi-Quellcode:
with Config do begin
    ReadInteger('Width',637,tmpi,true);
    MainForm.Width:=tmpi;
    ReadInteger('Height',475,tmpi,true);
    MainForm.Height:=tmpi;
onShow-Event habe ich WindowState := wsMaximized; hinzu gefügt. Bringt nichts.
Das muss doch einen Unterschied zwischen Delphi 2005 und Delphi Berlin geben. Mit dem alten Compiler übersetzt ist alles in Ordnung. Willie.
Angehängte Grafiken
Dateityp: jpg Screenshot 2020-08-26 17.08.41.jpg (72,6 KB, 16x aufgerufen)
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.

Geändert von Willie1 (26. Aug 2020 um 16:31 Uhr)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
698 Beiträge
 
Delphi 10.1 Berlin Starter
 
#3

AW: Main.Width und Height

  Alt 26. Aug 2020, 16:55
Hallo Renate,
ich habe es so gemacht:
self.SetBounds(1,1,wi,he); und es klappt. Left und Top spielen keine Rolle, da ich Postion auf poScreenCenter gesetzt habe, nehme ich an!
SetBounds habe ci hier noch nie gesehen oder benutzt.
Danke und Gruß Willie.
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.385 Beiträge
 
Delphi 12 Athens
 
#4

AW: Main.Width und Height

  Alt 26. Aug 2020, 18:56
Genau, rate mal was poScreenCenter macht?
Es überschteibt nach deinem OnShow die Koordinaten.

DEFAULT, aber in der DFM/FormDesigner oder allerspätestens im OnCreate ... die Positionen werden, wenn in der DFM, noch vor OnCreate geladen und können überschrieben werden.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (26. Aug 2020 um 18:58 Uhr)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
698 Beiträge
 
Delphi 10.1 Berlin Starter
 
#5

AW: Main.Width und Height

  Alt 5. Sep 2020, 16:59
Hallo Leute,
dieser von mir beschriebene Fehler tritt auf, wenn bei den TForm-Events OnCanResize eingebunden wird. Dann gibt es noch andere merkwürdige Effekte. Sonst funktionieren TForm.Width und Height, wie gewohnt.
Willie.
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.684 Beiträge
 
Delphi 5 Professional
 
#6

AW: Main.Width und Height

  Alt 5. Sep 2020, 17:09
Da TForm.OnCanResize ein Event ist, an das eine Ereignis-Methode gebunden werden kann, stellt sich natürlich (für mich) sofort die Frage, was diese Methode bei dir tut.

Grüße
Dalai
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
698 Beiträge
 
Delphi 10.1 Berlin Starter
 
#7

AW: Main.Width und Height

  Alt 5. Sep 2020, 17:57
Delphi-Quellcode:
procedure TMainForm.FormCanResize(Sender: TObject; var NewWidth,
  NewHeight: Integer; var Resize: Boolean);
begin
  Resize:=(NewHeight > 374) and (NewWidth > 636);
end;
Ich will verhindern, dass das Fenster kleiner wird. Ich habe das Event weggelassen. Ich hatte hier viele Antworten angeregt und will jetzt mitteilen, woran es wohl liegt!? Willie.
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.
  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 19:17 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