AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mehrere Formulare an Stringgridgröße anpassen

Ein Thema von Delphi-Laie · begonnen am 28. Okt 2010 · letzter Beitrag vom 2. Nov 2010
 
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

AW: Mehrere Formulare an Stringgridgröße anpassen

  Alt 29. Okt 2010, 22:33
Hallo hoika/Heiko! Wo hast Du das:

Delphi-Quellcode:
Unit FormTools;

XXX

procedure AdjustForm(theForm: TForm; theStringGrid: TStringGrid);
begin
  dein Code
her? In/ab welcher Delphiversion ist das zu haben?? Nicht einmal mein Turbodelphi kennt das. Das scheint aber genau das zu sein, was ich suche. Es gefiel mir von Anfang an auch am besten.

*******************

Autosize beim Forumular hilft übrigens nichts: Nicht nur, daß das Formular nicht mehr manuell zoombar ist, es ist natürlich auch nicht paßgenau, sondern zu klein: Sogar beide Scrollbalken des Stringgrids erscheinen. Keine Ahnung, was da "auto" gemacht wurde. Hineinprogrammierte Vorab-Intelligenz ist eben nicht immer so weitblickend, vorausschauend ausgelegt worden, daß sie später allen Anforderungen standhält.

******************

Hallo Bummi, auch Dir danke!

In folgendem Beispiel gehe ich mal davon aus daß colwith und rowheigth immer gleich sind, ansonsten halt drüberlaufen und rechnen:
Nein, sind sie nicht, sondern immer verschieden. Deshalb wollte ich es flexibel haben.

Delphi-Quellcode:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
begin
  if StringGrid1.width<(StringGrid1.colcount*(StringGrid1.Defaultcolwidth + 1) + 4) then
  StringGrid1.width:=(StringGrid1.colcount*(StringGrid1.Defaultcolwidth + 1) + 4);

  if StringGrid1.Height<(StringGrid1.Rowcount*(StringGrid1.DefaultRowHeight + 1) + 4) then
  StringGrid1.Height:=(StringGrid1.Rowcount*(StringGrid1.DefaultRowHeight + 1) + 4)


end;
Die Breite und Höhe eines StringGrids zu berechnen und daran - nach viel Ermitteln und Probieren - die Formulargröße pixelgenau so anzupassen, daß das Stringgrid ohne Scrollbalken auskommt, ist letztlich - ich meine das jetzt nicht abwertend - auch wieder nur eine Bastellösung (von der ich auch eine habe). Auch hier müßten jedesmal die Codezeilen erneut in den Quelltext eingefügt und wieder die Bezeichner entsprechend angepaßt werden.

Deshalb wäre eine Routine (wie hoika angedeutet) prima, aber mit OOP scheint es kaum zu funktionieren; höchstens mit einer der Formularklasse übergeordneten Klasse, in der eine solche Routine eingebaut wird, erscheint das möglich, aber daß ich so etwas hinbekomme (sofern es überhaupt möglich ist), ist nahezu ausgeschlossen.
  Mit Zitat antworten Zitat
 


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 06:40 Uhr.
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