Autor Beitrag
Tom Peters
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mo 12.02.07 13:48 
Hallo

Ich benutze Delphi 6 in meinem Schulkurs auf Windows XP. Ich habe ein TImage (Größe: 650x350) mit 32 TShapes verdeckt. Diese Shapes werden unsichtbar, wenn sie angeklickt werden. Während des Programmablaufs lade ich ein neues Bild, das zu Anfang von den Shapes verdeckt sein soll. Wenn das Bild geladen wird, ist es jedoch für eine kurze Zeit (Sekundenbruchteil) sichtbar.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
procedure TForm1.restart_btnClick(Sender: TObject);
begin
        s_1.Visible:=true;
        // alle anderen shapes sichtbar machen
        main_img.Visible:=false;
        main_img.Picture.LoadFromFile(bilder_pfade[random(bilder_anz)+1]);
        main_img.Visible:=true;
end;


Ich glaube es liegt daran, dass Delphi das Bild mit den Shapes "übermalt" anstatt zu prüfen, ob es überhaupt sichtbar ist.
Gibt es eine Möglichkeit dieses Aufflackern zu verhindern?

mfg Tom

ps: Ich habe zu Hause kein Delphi (Linux).
rockminstrel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 38

Win XP Prof.
Delphi 5 Prof., Delphi 2005 pers., Turbo Delphi 2006 Exp.
BeitragVerfasst: Mi 14.02.07 12:49 
Ich hätte eine Idee. Du hast das Image vermutlich auf deinem Form und lädst das Bild zur Laufzeit.
1. Tipp: stelle image.visible auf false und zwar im Delphi (nicht erst zur Laufzeit)
2. Tipp: evtl. bringt es was, wenn du image.visible als aller erstes auf false stelltst.