Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Objekte dynamisch mit Form skalieren (https://www.delphipraxis.net/14436-objekte-dynamisch-mit-form-skalieren.html)

dopeline 9. Jan 2004 13:24


Objekte dynamisch mit Form skalieren
 
Hallo!

als beispiel:
ich habe auf einem form ein stringgrid. wenn ich zur laufzeit die größe des fensters ändere, soll sich das stringgrid mitskalieren!

da sind noch weitere objekte. scrollbox, pagecontrol, panels, usw. die sollen im endeffekt auch mit skaliert werden

kann mir da jemand helfen?


Gruß, dopeline

Smokey 9. Jan 2004 13:31

Re: Objekte dynamisch mit Form skalieren
 
nuja was gibts da gross zu helfen... ist nur ne Menge Tipparbeit und ein bisserl Rechnerei.
Über width/height top/left lässt sich ja dann alles einstellen in Bezug auf die Grösse des Programmfensters (im Resize-event).

Kannst natürlich auch tools benutzen, die sowas vereinfachen, da gabs hier mal nen Link...aber ich hab die nie ausprobiert.

dopeline 9. Jan 2004 13:39

Re: Objekte dynamisch mit Form skalieren
 
Wie stelle ich die größe in den bezug zum formular?

dopeline

choose 9. Jan 2004 13:40

Re: Objekte dynamisch mit Form skalieren
 
Hallo Smokey,

seit D4 unterstützt besitzt die Basisklasse TControl die Eigenschaft Anchors. Sieh einmal in der OH nach und spiel ein wenig damit herum, vielleicht lässt sich so das gewünschte Resultat auch ohne eine Zeile Code realisieren...

dopeline 9. Jan 2004 13:51

Re: Objekte dynamisch mit Form skalieren
 
das mit dem anchors funzt super!

allerdings kann ich es nicht auf die spalten des stringgrids anwenden. :(
gibt es da auch noch einen trick? die spalten sollen sich proportional verbreitern...


Gruß, dopeline

Thunderchild 9. Jan 2004 14:21

Re: Objekte dynamisch mit Form skalieren
 
Geh ins onResize des Grids und ändere dort die Spalten.

dopeline 9. Jan 2004 14:31

Re: Objekte dynamisch mit Form skalieren
 
Also bei mir gibt es in den tabelleneigenschaften kein onResize :(

hast du solch ein ereignis?


Gruß, dopeline

dopeline 9. Jan 2004 14:36

Re: Objekte dynamisch mit Form skalieren
 
also ich habe es im onresize des hauptformulars versucht. mit

StringGrid1.ColWidths[0]:=StringGrid1.ColWidths[0]+1;

allerdings ändert es sich nicht proportional zur fenstergröße, sondern wird immer um 1 größer, sobald ich das fenster skaliere...


dopeline

Thunderchild 9. Jan 2004 14:56

Re: Objekte dynamisch mit Form skalieren
 
ist ja auch klar. Da steht doch x:=x+1
Probiers lieber mit
Delphi-Quellcode:
for i:=0 to StringGrid.ColCount-1 do
  StringGrid.ColWidths[i]:=StringGrid.width div StringGrid.ColCount

dopeline 9. Jan 2004 15:00

Re: Objekte dynamisch mit Form skalieren
 
na das ist doch schon fast perfekt! allerdings sind die spalten unterschiedlich groß und sie werden durch dein verfahren gleichgroß!


Gruß, dopeline


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:28 Uhr.
Seite 1 von 2  1 2      

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