Paint Linien zeichnen



  • Hallo Ich schreibe ein Paint proggie... Ich kann da ganz einfach gerade linien zeichnen. Ich würde das gerne so abändern, das beim mousedown ereignis auf dem image der Anfangspunkt gesetzt wird, und beim halten der Maustaste die Linie mit angezeigt wird bis ich die Taste wieder los lasse...

    Hier erst mal der Code!!!

    void __fastcall TForm1::Image1MouseDown(TObject *Sender,
          TMouseButton Button, TShiftState Shift, int X, int Y)
    {
          Image1->Canvas->Pen->Color = CColorGrid1->ForegroundColor;
          Image1->Canvas->MoveTo(X,Y);
    }
    
    void __fastcall TForm1::Image1MouseUp(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
      if (SpeedButton2->Down)
        Image1->Canvas->LineTo(X,Y);
    }
    

    Da ist eben das Problem, das die Linie erst beim MousUp Eregnis gezeichnet wird

    Danke


  • Mod

    Hallo

    MouseMove

    MfG
    Klaus



  • Hallo Klaus...

    An MouseMove hab ich auch schon gedacht. Aber da erreicht man nichts weiter wie eine Freihandzeichnung auf dem Image, da die Punkte bei der Mousbewegung gleich gezeichnet werden...

    Linux



  • Dann solltest du deinen Zeichnenroutine anpassen... (o:

    -junix



  • Such mal hier im Forum nach XOR im Zusammenhang mit Zeichnen, oder nach 'Rubberbanding'.


Anmelden zum Antworten