Witam mam taki problem z delphi zrobiłem sobie coś jak pędzel i kod działa jest tylko jedna rzecz jeśli za szybko przesunę myszkę to robią się przerwy jeśli przesuwamy powoli to jest ok tworzy się linia
oto mój kod potrzebuje rady jak to poprawic :/
procedure TForm3.ObrazMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
mouse_down:=false;
end;
procedure TForm3.ObrazMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
mouse_down:=true;
end;
procedure TForm3.ObrazMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if (mouse_down) then
rysuj_pedzel(x,y,Obraz.Canvas.Pen.Color,styl_pedzla);
end;
procedure TForm3.rysuj_pedzel(x,y,kolor,rodzaj:integer);
var sr:integer;
tbcolor,tpcolor:integer;
begin
tbcolor:=Obraz.Canvas.Brush.Color;
tpcolor:=Obraz.Canvas.Pen.Color;
if rodzaj=0 then
sr:=18
else if rodzaj=1 then
sr:=7
else if rodzaj=2 then
sr:=5
else if rodzaj=3 then
sr:=3;
Obraz.Canvas.Brush.Color:=kolor;
Obraz.Canvas.Pen.Color:=kolor;
Obraz.Canvas.Brush.Style:=bsSolid;
if rodzaj=0 then
Obraz.Canvas.Rectangle(x,y,x+sr,y+sr)
else Obraz.Canvas.Rectangle(x-sr,y-sr,x+sr,y+sr);
Obraz.Canvas.FloodFill(x+1,y+1,clblack,fsSurface);
Obraz.Canvas.Pen.Color:=tpcolor;
Obraz.Canvas.Brush.Color:=tbcolor;
Obraz.Canvas.Brush.Style:=typ_wypelnienia;
end;