delphi鼠标画图问题

来源:百度知道 编辑:UC知道 时间:2024/06/02 12:32:57
鼠标在image控件某一点点击,在鼠标所在位置绘制一个黄色或者红色的圆形~~怎样实现.请赐教!

//在界面上放置一个Image控件,MouseDown事件内写。

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Image1: TImage;
procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
procedure DrawRound(Canvas: TCanvas; Cl :TColor; vX,vY: integer);
public

end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.DrawRound(Canvas: TCanvas; Cl: TColor; vX, vY: integer);
procedure circle(Canvas: TCanvas;Cl: TColor; x0,y0,x,y:integer);
begin
with Canvas do
begin
pen.Color:=Cl;
brush.Color:=Cl;
brush.color:=Cl;
pixels[x0+x,y0+y]:=Cl;
pixels[x0+x,y0-y]:=Cl;
pixels[x0-x,y0-y]