Forum: Programmieren allgemein
Delphi
by Bummi,
23. Mär 2011
Hi, möglicherweise beginnen Deine Indizes bei 1 statt bei 0, der folgende Teil müsste in jedem Fall Ärger machen
for i := 0 to AnzahlZeilen do
for n := 0 to AnzahlSpalten do
buchstabe....
bei z.B. 5 Zeilen greift Du zu von 0..5 also auf 6 Elemente.
Ich habe einen kleinen Anhang erstellt, mit Ersatzweise einem Stringgrid und String statt Zeichen. Das Prinzip bleibt ähnlich.
Forum: Programmieren allgemein
Delphi
by Bummi,
20. Mär 2011
Du kannst freilich Array's kopieren
// Fixe Array's völlig unproblematisch
procedure TForm1.Button1Click(Sender: TObject);
type
r=Record
c:Char;
f:Byte;
end;
TArr=array of r;
Forum: Programmieren allgemein
Delphi
by Bummi,
20. Mär 2011
Irgendwie denken und reden wir aneinander vorbei, ich hatte Dich so verstanden du Du nacheinander Änderungen an "Zellen" vornimmst (Char und Farbe).
Wenn Du jede Änderung mitprotokollierst und Deinen Ausgangszustand kennst kannst Du entweder beim Rückgängig machen vom Ausgangszustand alle Schritte bis zu diesem gewünschten Punkt "abspielen" oder von Hinten jeweils den "Vorgängerzustand" der...
Forum: Programmieren allgemein
Delphi
by Bummi,
19. Mär 2011
type
TChronologieElement = record
Zeichen : char;
attribut : byte;
X : Integer;
Y : Integer;
end;
var
TChronologieArray : array of TChronologieElement;
Forum: Programmieren allgemein
Delphi
by Bummi,
19. Mär 2011
Sorry, ich habe nicht verstanden was Du meinst...
Forum: Programmieren allgemein
Delphi
by Bummi,
19. Mär 2011
geht schon, wenn die Bitmapgröße passt und Du nach dem wiederherstellen Invalidate aufrufst...
procedure TForm1.Button1Click(Sender: TObject);
begin
if not Assigned(Fbmp) then Fbmp := TBitmap.create;
FBMP.Width := Image.Width;
Fbmp.Height := Image.Height;
ZustandSpeichern(Image,FBMP);
end;