Delphi-PRAXiS

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 Größenänderung eines Form nicht zulassen (https://www.delphipraxis.net/40365-groessenaenderung-eines-form-nicht-zulassen.html)

mlspider 14. Feb 2005 20:48


Größenänderung eines Form nicht zulassen
 
Hallo,

mal ne ganz banale Frage. Gibt es im Objectinspector eine Einstellung, die verhindert, daß man mit der Maus ein Form größer oder kleiner ziehen kann, oder muß die per Quellcode erledigt werden.

Danke

Binärbaum 14. Feb 2005 20:50

Re: Größenänderung eines Form nicht zulassen
 
In den Events eines Formulars gibt es OnCanResize. Dort muss man einfach die Variable CanResize auf False setzen, und schon bleibt die Größe so, wie sie ist.

MfG
Binärbaum

mlspider 14. Feb 2005 20:51

Re: Größenänderung eines Form nicht zulassen
 
Hab ich's mir doch gedacht. Die Lösung konnte ja nur banal sein. Danke.

alcaeus 14. Feb 2005 20:52

Re: Größenänderung eines Form nicht zulassen
 
Hallo mlspider,

evtl. kannst du auch mit den Constraints arbeiten, damit kannst du die Groesse beschraenken (Min/MaxWidth/Height)

Greetz
alcaeus

Motzi 14. Feb 2005 20:54

Re: Größenänderung eines Form nicht zulassen
 
Warum so kompliziert?? Einfach den BorderStyle auf bsSingle oder bsDialog.. je nachdem..

mlspider 14. Feb 2005 20:56

Re: Größenänderung eines Form nicht zulassen
 
Hallo Motzi. Kann ich bei mir nur auf bsNone setzen, da ich ein Skin verwende.

bigg 14. Feb 2005 21:03

Re: Größenänderung eines Form nicht zulassen
 
Liste der Anhänge anzeigen (Anzahl: 1)
(Constraints)

mlspider 14. Feb 2005 21:11

Re: Größenänderung eines Form nicht zulassen
 
Danke für Dein Beispiel. Ich hab es einfach OnCanResize gelößt:

Delphi-Quellcode:
procedure TForm1.FormCanResize(Sender: TObject; var NewWidth,
  NewHeight: Integer; var Resize: Boolean);
begin
 Resize:=False;
end;

Binärbaum 14. Feb 2005 23:50

Re: Größenänderung eines Form nicht zulassen
 
Zitat:

Zitat von mlspider
... Ich hab es einfach OnCanResize gelößt:

Delphi-Quellcode:
procedure TForm1.FormCanResize(Sender: TObject; var NewWidth,
  NewHeight: Integer; var Resize: Boolean);
begin
 Resize:=False;
end;

Das ist meiner Meinung nach auch die beste und gleichzeitig einfachste Lösung. :wink:

MfG
Binärbaum

Quake 15. Feb 2005 06:24

Re: Größenänderung eines Form nicht zulassen
 
Wie bekommt man es aber hin, das sich der Mauszeiger nicht ändert wenn man über die Kante des Forms geht?

jim_raynor 15. Feb 2005 06:31

Re: Größenänderung eines Form nicht zulassen
 
BorderStyle des Formulares auf bsSingle oder bsNone oder bsDialog setzen ...

Quake 15. Feb 2005 06:46

Re: Größenänderung eines Form nicht zulassen
 
Das funktioniert aber so nicht. Oder liegt es daran, dass die forms MDI-Childs sind?

[EDIT]Es funktioniert nur mit dsDialog nicht, mit dsSingle hast du Recht.[/EDIT]

jim_raynor 15. Feb 2005 06:51

Re: Größenänderung eines Form nicht zulassen
 
Zitat:

Zitat von Quake
Das funktioniert aber so nicht. Oder liegt es daran, dass die forms MDI-Childs sind?

Bei MDI-Childs funktioniert das tatsächlich nicht. Das könnte man nur durch fiese und unschöne Tricks lösen.

Motzi 15. Feb 2005 09:28

Re: Größenänderung eines Form nicht zulassen
 
Delphi-Quellcode:
SetWindowLong(Handle, GWL_STYLE, GetWindowLong(Handle, GWL_STYLE) and not WS_SIZEBOX);
alternativ dazu kann man auch CreateParams überschreiben und den Window-Style dort setzen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 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