Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
14. Feb 2008
Hi,
das Standardintervall ist 1000 (Angabe in Millisekunden). Der Timer feuert das Ereignis OnTimer() nur, wenn seine Eigenschaft Enabled auf True gesetzt wird. Also solltest du Enabled im Object Inspector auf False setzen und diese Eigenschaft über deinen Button verändern.
Den Scrollbalken baust du selbst ein. Die momentane Position kannst du beim Ereignis OnChange als Intervall des...
Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
10. Feb 2008
Du musst einfach nur beides aufeinander abstimmen, weil du ja die Ausgangszustände für die Berechnung der nächsten Generation aus dem Grid auslesen willst. Am einfachsten ist das sicher, wenn du auch dein Array bei 0 starten lässt.
Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
10. Feb 2008
Hallo Manuel,
ich würde beim Grid die FixedCols und FixedRows auf 0 setzen und die Dimensionen anpassen (RowCount = ColCount = 8) und anstelle von Bildern würde ich einfach die Zellen einfärben.
Freundliche Grüße
Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
9. Feb 2008
Hi,
betrachten wir das doch mal so: Du betrachtest acht Nachbarn einer Zelle. Eine Leerzelle wird lebendig, wenn sie mindestens drei lebende Nachbarzellen hat. Eine lebende Zelle überlebt, wenn sie mindestens zwei lebende Nachbarzellen hat. Nimm einfach einen Test für die aktuelle Zelle mit auf und schon klappt das:
begin
for i := 1 to 8 do
for j:= 1 to 8 do
begin // block...
Forum: Object-Pascal / Delphi-Language
Delphi
by marabu,
9. Feb 2008
Herzlich willkommen in der Delphi-PRAXiS, Lenuam.
In Pascal (Delphi) kannst du mit einem IF-Statement immer nur ein einzelnes Statement ausführen. Willst du dort mehrere Statements ausführen, dann musst du sie zu einem Block zusammenfügen.
const
LifeSymbol: array of Char = (' ', '0'); // 0 = Leben, Leerzeichen = kein Leben
procedure TForm1.Button3Click(Sender: TObject);
var