Forum: Multimedia
Delphi
by patti,
19. Feb 2010
Achtung! So wie du es geschrieben hast, wäre das Spielfeld 21 und nicht 20 Felder breit bzw. hoch ("0..20" sind nämlich 21 Elemente).
Also entweder
MyGameFeld:array of TMyGameFeld;
oder
MyGameFeld:array of TMyGameFeld;
Forum: Multimedia
Delphi
by patti,
19. Feb 2010
Wichtig ist letzendlich, dass du damit klar kommst und du dich in deinem eigenen SourceCode zurecht findest. Einpaar Dinge haben sich aber sozusagen als "Standard" durchgesetzt. Dazu gehört beispielsweise, dass man pro Zeile nur eine Anweisung hat. Aus dem hier:
x_hilf:=X div 25; y_hilf:=Y div 25;
(entnommen aus deinem oberen Post) solltest du lieber zwei Zeilen machen:
x_hilf:=X div 25;...
Forum: Multimedia
Delphi
by patti,
19. Feb 2010
Warum versuchst du nicht das, was mimi in Post #16 vorgeschlagen hat? Speichere die einzelnen Felder einfach in einem 2-dimensionalen Array. Ausschauen könnte das z.B. so:
TFeld = (feWasser, feSchiff);
{..........}
private
Felder : array of array of TFeld;
So kannst du dann ganz einfach auf jedes beliebige Feld zugreifen und äußerst einfach bestimmen, welchen Zustand ein...
Forum: Multimedia
Delphi
by patti,
17. Feb 2010
Bei neueren Delphi-Versionen hat man aber keine Probleme mehr damit, weil das Hilfeformat geändert wurde. Hängt aber wie gesagt von der Delphi-Version ab. Als Alternative kannst du die Delphi-Reference benutzen, da solltest du zu sowas einige Dinge finden.
Forum: Multimedia
Delphi
by patti,
17. Feb 2010
In den bei der Funktion übergebenen Paramatern x und y stecken die Werte schon drin. Mit denen kannst du einfach weiterarbeiten. Wenn du beispielsweise folgendes in der OnMouseDown-Routine machst:
ShowMessage(IntToStr(x) + ' - ' + IntToStr(y));
dann bekommst du jedesmal eine Nachricht mit den beiden Koordinaten angezeigt. Wenn du in der linken oberen Ecke deiner Komponente klickst, dann...