Warum denn nicht so?
Delphi-Quellcode:
procedure TForm1.tGlobalTimerTimer(Sender: TObject);
var
AuswahlBild : string;
AuswahlNummer : integer;
begin
if pgbZeit.Position = pgbZeit.Max
then
begin
// Bild austauschen
repeat
AuswahlNummer := Random( clbBilder.Count );
until clbBilder.Checked[ AuswahlNummer ] = true; // <--- das = true kannst du dir hier sparen
AuswahlBild := sgDaten.Cells[ 2, AuswahlNummer ];
ChangeWallpaper( AuswahlBild );
// ProgressBar zurücksetzen
p := 0;
pgbZeit.Position := p;
end
else
begin
p := p + 100;
pgbZeit.Position := p;
end;
end;
Dann hast du nur einen Timer und die Wechsel sind absolut synchron mit der ProgressBar.
Da kann es Dir auch egal sein, wie falsch der Timer geht
cu
Oliver
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)