Jeg har i Delphi 6 lavet et lille program, der fremviser feriebilleder i
jpg-format. Til hvert billede hører en ledsagende tekst gemt i en
txt-fil og til nogle billeder også lyd i wav-format.
Mit problem er, at elementerne ikke vises i den rækkefølge, som jeg
ønsker og som skulle fremgå af nedenstående programstump:
Name:= ExtractFileName(FileName); { FileName angiver
billedfilen }
LabelDate.Caption:= Copy(Name,1,16); { Filnavnet begynder med
tidspunkt for optagelse }
InfoFile:= ChangeFileExt(FileName,'.txt'); { Info gemt i tekstfil med
samme "fornavn" }
if FileExists(InfoFile) then
begin
MemoInfo.Lines.LoadFromFile(InfoFile); { Info indlæses i memo-felt
}
LabelTitle.Caption:= MemoInfo.Lines[0]; { Overskrift gemt i første
linie }
MemoInfo.Lines.Delete(0); { Slet overskrift fra
memo-feltet }
end
else
begin
LabelTitle.Caption:= '';
MemoInfo.Clear;
end;
try
Image.Picture.LoadFromFile(FileName); { Vis billedet }
except
on EInvalidGraphic do
Image.Picture.Graphic:= nil;
end;
SoundFile:= ChangeFileExt(FileName,'.wav');
if FileExists(SoundFile) then { Afspil lyd, hvis fil
findes }
begin
ToolButtonMusic.Enabled:= True;
PlaySound(PChar(SoundFile), HInstance, SND_FILENAME);
end
else ToolButtonMusic.Enabled:= False;
I praksis vises elementerne imidlertid i følgende tækkefølge:
1) Memo-tekst
2) Lyd
3) Billede
4) Overskrift+tidsangivelse
skønt programrækkefølgen er 4), 1), 3), 2).
Det tager 1-2 sekunder på min maskine at loade et billede. Jeg har i et
billedbehandlingsprogram set, at et skilt med teksten "Loading..."
vises, medens billedet indlæses.
Hvordan gør man det, og hvordan får man elementerne vist i den ønskede
rækkefølge?
Det er specielt generende, at lyden kommer, medens det forrige billede
stadig er på skærmen!
Venlig hilsen
Holger Nielsen
|