![]() |
Individuelle Positionen für Frames.
Neue Frage, neues Thema :)
Und zwar....
Delphi-Quellcode:
Meine Frage:
procedure TForm1.Button2Click(Sender: TObject);
var i:Integer; zaehler: Integer; begin zaehler:= 0; TestForm:=TForm.Create(Self); TestForm.ClientHeight:=1200; TestForm.ClientWidth:=700; for i := 0 to CheckListBox1.Items.Count-1 do if CheckListBox1.Checked[i] then if zaehler <= 10 then begin TestFrame:=TFrame4.Create(Self); TestFrame.Name:=''+(CheckListBox1.Items[i]); TestFrame.Top:= Random(1200); TestFrame.Parent:=TestForm; zaehler:= zaehler + 1; TestFrame.Show; end else begin ShowMessage('Zähler ist 10'); end; TestForm.Show; end; end. Wie kriege ich es hin, dass die Frames individuelle Werte erhalten? Momentan hab ich einfach Zufallswerte zugewiesen. Ziel: Die ersten 5 Frames sollen untereinander angeordnet werden(da mehr nicht auf ein DIN A4 Seite passen) die nächsten 5 daneben und wieder 5 untereinander. Wie könnte ich das umsetzen, dass die Frames nicht kreuz und quer (Random) auf dem Formular verteilt sind? :) |
AW: Individuelle Positionen für Frames.
Benutze globale Variablen. Die kannst Du dort deklarieren, wo Dein Formular deklariert ist, oder Du definierst sie einfach IN Deinem Formular im public-Abschnitt.
Anzahl, X, Y: Integer; Dann kannst Du Deine Werte immer anpassen, wenn Du einen neuen Frame definierst.... |
AW: Individuelle Positionen für Frames.
Zitat:
Besser im Formular BTW: @Metallicwar: Bitte verwende für Delphi Quellcode, Delphi-Tags |
AW: Individuelle Positionen für Frames.
Zitat:
Delphi-Quellcode:
Die Variablen in diesem Abschnitt deklarieren?
var
Form1: TForm1; TestForm: TForm; TestFrame: TFrame4; Anzahl,x,y: Integer; Zitat:
Am Besten gleich mal mit Beispiel.. :) mfg |
AW: Individuelle Positionen für Frames.
Dein Beispiel "unter Form1" ist eine globale Variablendefinition.
Du kannst sie dann überall in der Unit verwenden. Aber im Sinne eine sinnvollen Daten-Struktur ist das nicht immer der beste Weg. Du kannst die Variablen auch "im Formular" deklarieren:
Delphi-Quellcode:
Dann sind die Daten nur innerhalb der Formularmethoden verwendbar oder von außen über Form1.Anzahl... usw
TForm1 = class(TForm)
private ... public Anzahl, X, Y: Integer; ... end; Kleiner Tipp noch: Auchte von Anfang an auf eine übersichtliche Formatierung und Struktur Deines Qelltextes. Dies erleichtert es, den Überblick zu behalten und mögliche Fehler zu finden... |
AW: Individuelle Positionen für Frames.
nach langem grübeln, muss ich mich leider geschlagen geben :pale:
Liegt warscheinlich an der nachlassenden Konzentration. Was muss ich den deklarierten Variablen zuweisen, etc? mfg |
AW: Individuelle Positionen für Frames.
sooo, nach Feierabend, nachdem guten Essen hab ich`s noch selber hinbekommen.
TFrame.ClientWidht
Delphi-Quellcode:
x:=0;
y:=0; TestFrame.ClientWidth:=200; TestFrame.Top:= y + TestFrame.ClientWidth y:=TestFrame.Top Falls ich morgen nicht weiterkommen sollte, meld ich mich :) |
AW: Individuelle Positionen für Frames.
Ja klar, kein Problem!
Man muss sich immer Zeit und Ruhe nehmen und nix überstürzen. :wink: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:48 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