Hallo! Ich bin gerade dabei ein Demonstrationsprogramm für meine Facharbeit zu erstellen. Es dreht sich um die Veranschaulichung von (De-)Fragmentation. Ich habe als Dateisystem ein Array und als Oberfläche ein Haufen TImages:
http://img.max-heine.de/defrag1.jpg
Den Tipp mit FindComponent habe ich hier aus dem Board. Danke!
Zur Aktualisierung der Ansicht wollte ich folgendes nutzen:
Delphi-Quellcode:
procedure TForm1.spansichtneu;
var
I: Integer;
begin
for I := 1 to 374 do
begin
case speicher[I] of
1:(FindComponent('ids'+inttostr(I)) as TImage).picture.LoadFromFile(pfad+'img\blgu.bmp');
2:(FindComponent('ids'+inttostr(I)) as TImage).picture.LoadFromFile(pfad+'img\blrt.bmp');
3:(FindComponent('ids'+inttostr(I)) as TImage).picture.LoadFromFile(pfad+'img\blgr.bmp');
4:(FindComponent('ids'+inttostr(I)) as TImage).picture.LoadFromFile(pfad+'img\blbl.bmp');
5:(FindComponent('ids'+inttostr(I)) as TImage).picture.LoadFromFile(pfad+'img\blge.bmp');
end;
end;
end;
1-5 sind die Zustände, 1=free, 2=fragmentiert, 3=used, 4=read, 5=write, so im Array hinterlegt, bei Start auf 1, allerdings ohne Picture.
ids### sind die TImages, befinden sich auf einem Panel. Und der Pfad sollte eigentlich auch passen:
pfad:=sysutils.ExtractFilePath(Application.Exename);
Die Bilder liegen in einem Ordner img bei der .exe.
Ich hoffe mir kann jemand helfen...