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
Seite 2 von 2     12   
Willie1

Registriert seit: 28. Mai 2008
618 Beiträge
 
Delphi 10.1 Berlin Starter
 
#11

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.680 Beiträge
 
Delphi 5 Professional
 
#12

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
618 Beiträge
 
Delphi 10.1 Berlin Starter
 
#13

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
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#14

AW: Main.Width und Height

  Alt 5. Sep 2020, 19:11
Ohne diese an das OnCanResize-Event gebundene Methode tritt das im OP beschriebene Problem also nicht auf? Wenn das so ist, dann ist doch gut.

Um eine Mindestgröße eines Forms festzulegen, gibt es Delphi-Referenz durchsuchenTForm.Constraints. Oder du gibst deiner Routine, die die gespeicherten Werte ausliest, entsprechende Vorgabewerte. Oder beides.

Grüße
Dalai
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Main.Width und Height

  Alt 5. Sep 2020, 20:01
Wenn einwas auch nur ein Pixel zu klein ist, beim Ziehen, dann wird alles garnicht geändert,
außerdem springt es beim Ziehen in größeren Achritten, es sei denn du ziehst du Maus extrem langsam, womit es garnicht so leicht ist genau an diese Grenze ran zu kommen.

Ist dir an den Parametern was aufgefallen? (VAR)
Delphi-Quellcode:
procedure TMainForm.FormCanResize(Sender: TObject; var NewWidth, NewHeight: Integer; var Resize: Boolean);
begin
  if NewHeight < 374 then NewHeight := 374;
  if NewWidth < 636 then NewWidth := 636;
end;

// bzw.
NewHeight := Max(NewHeight, 374);
NewWidth := Max(NewWidth, 636);
Aber wozu das Manuelle, wenn es auch automatisch geht?
Form.Contraints.MinHeight und MinWidth
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 5. Sep 2020 um 20:08 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   

 

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 03:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz