Forum: Object-Pascal / Delphi-Language
Delphi
by Nikolas,
17. Aug 2004
Erstmal ins oncreate damit du die ersten Vergleichswerte(w,h) fest hast. Dann rechnest du bei jeder Veränderung der FormGröße dw und dh aus und setzt w und h neu.
Alles wird hier nicht verraten 8)
Forum: Object-Pascal / Delphi-Language
Delphi
by Nikolas,
17. Aug 2004
wo steht denn, dass dw:=form.width/form.width??? Du musst das hier:w:=form.Width;
h:=form.Height; natürlich nach jeder Veränderung des Forms neu ausführen. :zwinker:
Forum: Object-Pascal / Delphi-Language
Delphi
by Nikolas,
16. Aug 2004
Jetzt noch schneller: (Hier kommt's her)
for i := 0 to Form.ControlCount-1 do
Changecomponent(Form.Controls,dw,dh);
Viel Spaß
Tox
@ Codelib-Manager: Meint ihr, dass Ganze sollte in die Codelib? Ist eigentlich recht nützlich :gruebel:
Forum: Object-Pascal / Delphi-Language
Delphi
by Nikolas,
16. Aug 2004
Also ich hab hier mal kurz eine procedure geschrieben dir dir nützlich sein könnte. Nur muss die für jede Komponente aufgerufen werden, aber wahrscheinlich gibt es eine Möglichkeit eine TControl ist die Basisklasse für alle Komponenten, die zur Laufzeit sichtbar sind. Art Findcomponent so zu gestalten, dass alle TControl-Komponenten aufgerufen werden. procedure Tform.Changecomponent(comp:...
Forum: Object-Pascal / Delphi-Language
Delphi
by Nikolas,
16. Aug 2004
Ich versteh's so, dass er alle Komponenten proportional zum Form verändern will, dass also wenn Form.width:=2*Form.width gemacht wird, dass dann alle Komponenten doppelt so breit werden.
Also könntest du width und heigth des Forms speichern und dann wenn sich diese Werte ändern, den Quotienten aus width(alt) und width(neu) berechnen und dann für jede Komponente width und left mit dieser Zahl...