读书人

小弟我想在内存中绘图为什么上面的代

发布时间: 2013-01-23 10:44:49 作者: rapoo

我想在内存中绘图,为什么下面的代码没反应呢?


unit Unit1;

interface

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

type
TForm1 = class(TForm)
btn_1: TButton;
procedure btn_1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure DrawBufImage(bufCanvas:TCanvas );
end;

var
Form1: TForm1;
oldbmp,Bufbmp:TBitmap ;
implementation

{$R *.dfm}

procedure TForm1.DrawBufImage(bufCanvas: TCanvas);
begin
bufCanvas.Pen.Color :=clBlack ;
bufCanvas.MoveTo(0,0);
bufCanvas.LineTo(100,100);
end;

procedure TForm1.btn_1Click(Sender: TObject);
begin
Bufbmp:=TBitmap.Create ;
DrawBufImage(Bufbmp.Canvas );
bitblt(self.Canvas.Handle, 0, 0, 400, 400,
BufBmp.Canvas.Handle, 0, 0, SRCCOPY);
Bufbmp.Free ;
end;

end.



没反应,是哪里错了呢
[解决办法]
引用:
引用:Delphi/Pascal code?12345678910111213141516171819202122procedure TForm1.btn_1Click(Sender: TObject);var img: TImage;begin img := TImage.Create(Self); try img.Par……


SRCCOPY改成SRCAND


bitblt(self.Canvas.Handle,?0,?0,?200,?200,
????img.Canvas.Handle,?0,?0,?SRCCOPY);
----------------------------------------------------
bitblt(self.Canvas.Handle, 0, 0, 200, 200,
img.Canvas.Handle, 0, 0, SRCAND);

读书人网 >.NET

热点推荐