Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Maximal / Minimalgröße einer TForm
Hagbard Celine - Di 16.07.02 12:54
Titel: Maximal / Minimalgröße einer TForm
Ich möchte die Größe meiner Form beschränken!
Zu diesem Zweck habe ich folgenden Code in das onResize-Event der Form geschrieben!
Quelltext
1: 2:
| if width < 580 then width := 580; if height < 270 then height := 270; |
Leider hat das den kleinen Nebeneffekt das die Darstellung flimmert, da das System erst verkleinert und dann meine Korrektur übernimmt!
Gibt es eine Möglichkeit das Event vor dem verkleinern abzufangen und nur dann eine Änderung vorzunehmen wenn der neue Wert im Rahmen liegt! Es schein ja als würde er das Event für jeden "Pixel" den sich die Form ändert aufrufen!
wwerner - Di 16.07.02 13:38
In den interfaceteil deiner Form
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| TfrmMain = class(TForm) ...... private procedure wmGetMinMaxInfo(var Msg : TMessage); Message wm_GetMinMaxInfo; .....
procedure TfrmMain.wmGetMinMaxInfo(var Msg : TMessage); {begenzt die erlaubte Formulargröße}
begin PMinMaxInfo(Msg.lParam)^.ptMinTrackSize := Point(640 ,480); PMinMaxInfo(Msg.lParam)^.ptMaxTrackSize := Point(1024,768); end; |
Hagbard Celine - Di 16.07.02 13:49
wwerner hat folgendes geschrieben: |
In den interfaceteil deiner Form
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| TfrmMain = class(TForm) ...... private procedure wmGetMinMaxInfo(var Msg : TMessage); Message wm_GetMinMaxInfo; .....
procedure TfrmMain.wmGetMinMaxInfo(var Msg : TMessage); {begenzt die erlaubte Formulargröße}
begin PMinMaxInfo(Msg.lParam)^.ptMinTrackSize := Point(640 ,480); PMinMaxInfo(Msg.lParam)^.ptMaxTrackSize := Point(1024,768); end; | |
Ist das eine Erweiterung der bestehenden Form oder ist der Code schon enthalten?
Kann ich das zur Laufzeit ändern? Oder wenn ich eine Form erzeuge?
Tino - Di 16.07.02 14:14
Welche Delphi-Version benutzt Du? Ich habe Delphi 5 und da gibt es bei den Forms die Eigenschaft Constraints. Schau Dir die Unter-Eigenschaften mal an. Die sollten helfen.
Diese Eigenschaft ist glaube ich aber Delphi 4 oder 5 vorhanden!
Gruß
Hagbard Celine - Di 16.07.02 14:23
Tino hat folgendes geschrieben: |
Welche Delphi-Version benutzt Du? Ich habe Delphi 5 und da gibt es bei den Forms die Eigenschaft Constraints. Schau Dir die Unter-Eigenschaften mal an. Die sollten helfen.
Diese Eigenschaft ist glaube ich aber Delphi 4 oder 5 vorhanden!
Gruß |
Habe Delphi 6!
Und ja! Vorhanden!
Manchmal ist man so blind das man den Wald vor lauter Bäumen nicht sieht!
Danke!
b.brecht - Di 16.07.02 14:52
du kannst die form auch einfach "Single" machen und nicht "Resizeable"
Tino - Di 16.07.02 14:55
Aber dann kann man das Fenster ja nicht mehr in seiner Größe ändern!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!