Kurs Delphi #3
W trzeciej części tego kursu opiszę rysowanie po formie przy użyciu canvas.
Zadeklaruj zmienną klik typu boolean, w tym celu na górze pliku źródłowego w sekcji var nad Implementation dodaj taki kod :
klik:boolean;
Kliknij na formę i w zakładce events ( w Object Inspector) kliknij dwa razy na zdarzeniu OnMouseDown
i wpisz kod ,który ma za zadanie wtedy kiedy wciśnięty jest przycisk myszy, podstawienie pod zmienną klik wartości true :
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
klik:=true;
end;
Do zdarzenia OnMouseUp wstaw kod ,który podstawi pod zmienną klik wartość false wtedy kiedy zostanie zwolniony przycisk myszy :
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
klik:=false;
end;
Do zdarzenia OnMouseMove wpisz kod ,który będzie rysował czarne piksle wtedy kiedy będzie naciśnięty klawisz myszki :
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if klik=true then //sprawdzanie czy zmienna klik jest równa true
begin
Form1.Canvas.Pixels[x,y]:=clblack; //rysuje piksel w pozycji kursora xpozycja x, y pozycja y;
end;
end;
Możesz również zamiast kodu Form1.Canvas.Pixels[x,y]:=clblack; wstawić jakiś inny kod np.
Form1.Canvas.Rectangle(x,y,x+100,y+100);
lub
Form1.Canvas.Ellipse(x,y,x+100,y+100);
lub
Form1.Canvas.TextOut(x,y,'Kurs');
Jeżeli chciałbyś to możesz zmieniać kolory pędzla i pióra np.
kolor pędzia :
Form1.Canvas.Brush.Color:=clyellow;
kolor pióra :
Form1.Canvas.Pen.Color:=clyellow;
Dariusz Łazowski
_________________________ 53 _________________________
:: Poprzednia strona :: Wstęp :: Następna strona ::
|