Grafikfehler bei Imagebewegung



  • Hi,

    wenn ich ein Image mit dem Timer bewegen lasse, dann fängt das Bild zum Flackern an...

    int X;
    Unter Timer steht:

    X++;
    Image1->Left = X+200;

    Darauf hin fängt dieses Bild zum Flackern an...
    Was kann man dagegen machen ?

    DANKE im Vorraus

    Fox



  • Such mal mit der Suchfunktion nach "Flackern" oder "Double Buffering".



  • oder versuchs mal so:

    void __fastcall TFormMain::Timer1Timer(TObject *Sender)
    {
      Image1->Refresh();
      int Bildhoehe = Bildhoehe eingeben!, Bildbreite = Bildbreite eingeben!;
      TRect First(X,0,X+Bildbreite,Bildhoehe); X = X+200;
      TRect Second(X,0,X+Bildbreite,Bildhoehe);
      Image1->Left = X;Image1->Canvas->CopyRect(First,Image1->Canvas,Second);
    }
    //---------------------------------------------------------------------------
    

    Bei mir hat es so funktioniert!!!



  • oh sorry merk gerade meins funktioniert doch nicht so wie gewollt... habs mir wohl zu leicht gemacht!!! 😞


Anmelden zum Antworten