AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mini-Paint - Rechtecke ziehen

Ein Thema von Dellphi · begonnen am 4. Mär 2010 · letzter Beitrag vom 4. Mär 2010
 
Dellphi

Registriert seit: 5. Nov 2009
23 Beiträge
 
#1

Mini-Paint - Rechtecke ziehen

  Alt 4. Mär 2010, 15:37
Hallo!

Ich habe ein kleines Problem mit meinem Mini-Paint Programm, welches ich zur Zeit programmiere:

Ich wollte ein Rechteck programmieren, dass man wie im echten Paint aufziehen kann.
Dies ist mir auch gelungen, sogar mit Fallunterscheidung für gefüllt und ungefüllt, aber man sieht während des Ziehens des Rechtecks nichts.
Wie kann ich das ändern?

Hier mein Quelltext:

Delphi-Quellcode:
procedure TPaint.BildMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
     with Bild.Canvas do begin
     if BtRechteck.Enabled=False
     then begin
     if BtRechteckungefuellt.Enabled=False
     then begin
          Brush.Style:=bsclear;
          XAnfang:=X;
          YAnfang:=Y;
          XEnde:=X;
          YEnde:=Y;
          Moveto (XAnfang,YAnfang);
     end;
     if BtRechteckgefuellt.Enabled=False
     then begin
          Brush.Style:=bssolid;
          XAnfang:=X;
          YAnfang:=Y;
          XEnde:=X;
          YEnde:=Y;
          Moveto (XAnfang,YAnfang);
     end;
     end;
     end;
end;

procedure TPaint.BildMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
     with Bild.Canvas do begin
     if BtRechteck.Enabled=False
     then begin
     if MausGedrueckt=True
     then begin
     if BtRechteckungefuellt.Enabled=False
     then begin
     Brush.Style:=bsclear;
     Pen.mode := pmnotxor;
     Moveto (XAnfang,YAnfang);
     Rectangle (xanfang,yanfang,xende,yende);
     Pen.style := psdot;
     Moveto (XAnfang,YAnfang);
     Rectangle (xanfang,yanfang,x,y);
     XEnde:=X;
     YEnde:=Y;
     end;
     if BTRechteckgefuellt.Enabled=False
     then begin
     Brush.Style:=bssolid;
     Pen.mode := pmnotxor;
     Moveto (XAnfang,YAnfang);
     Rectangle (xanfang,yanfang,xende,yende);
     Pen.style := psdot;
     Moveto (XAnfang,YAnfang);
     Rectangle (xanfang,yanfang,x,y);
     XEnde:=X;
     YEnde:=Y;
     end;
     end;
     end;
     end;
end;

procedure TPaint.BildMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
     with Bild.Canvas do begin
     MausGedrueckt:=False;
     if BtRechteck.Enabled=False
     then begin
     if BtRechteckungefuellt.Enabled=False
     then begin
          Brush.Style:=bsclear;
          Pen.mode := pmcopy;
          Pen.Style := pssolid ;
          Xende := x;
          YEnde := y;
          Rectangle(XAnfang, YAnfang, X, Y);
     end;
     if BTRechteckgefuellt.Enabled=False
     then begin
          Brush.Style:=bssolid;
          Pen.mode := pmcopy;
          Pen.Style := pssolid ;
          Xende := x;
          YEnde := y;
          Rectangle(XAnfang, YAnfang, X, Y);
     end;
     end;
     end;
end;
Vielen Dank schonmal im Voraus !!!!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz