我的这段程序报错:
procedure TForm1.Button1Click(Sender: TObject);
var
Canvas: TCanvas;
begin
x,y,i,j: Integer;
x:=20;
Canvas:=TCanvas.Create; for i:=1 to 50 do Canvas.Pixels[x+i,5]:=clRed;// Canvas.Free;
end;
错误信息是:
canvas does not allow drawing!
为什么?
procedure TForm1.Button1Click(Sender: TObject);
var
Canvas: TCanvas;
begin
x,y,i,j: Integer;
x:=20;
Canvas:=TCanvas.Create; for i:=1 to 50 do Canvas.Pixels[x+i,5]:=clRed;// Canvas.Free;
end;
错误信息是:
canvas does not allow drawing!
为什么?
解决方案 »
- delphi Tcxcheckcombobox控件问题
- 怎么样编程播放OGG格式的音频文件?
- 一个存储过程游标的问题
- 求WIN2000服务版下载!
- 关于物流管理的!取消审核一般怎么做?求思路!谈谈可以吗?
- 请教高手!(高分求救!!!)
- 有谁知道12月分的英语四六级考试报名的信息,是否已经报过了???
- query等数据访问控件放在form上和datamodule上有何区别?
- 如何在Delphi中实现对一个zip文件的解压?
- delphi 5企业版,TDataSetProvider无法在类型库中注册?...
- 想写个公文自动流转的程序,要注意点什么呢?
- 如何用delphi编写网页?初次接触这个问题,请大家多多指教小妹……
x,i: Integer;
begin
x:=20;
for i:=1 to 50 do
self.Canvas.Pixels[x+i,5]:=clRed;//
end;
Canvas.Handle:=GetDC(Form1.Handle);
的代码,即可执行建议看看TCanvas是如何具体封装的~~~
Canvas.Handle :=Form1.Canvas.Handle;就可以了啊!
那为什么不直接用Form1.Canvas???如果Delphi的TForm对象无Canvas成员呢?
这是通过窗体句柄到HDC的一般转化过程~~~
MyRgn := CreateRectRgn(100,100,200,200);
SelectClipRgn(Canvas.Handle,MyRgn);
Canvas.Pixels[x+i,5]:=clRed;
SelectClipRgn(Canvas.Handle,nil);
DeleteObject(MyRgn)或者你直接用api函数SetPixel
----
我不是来相亲的
var
C: TCanvas;
begin
x,y,i,j: Integer;
x:=20;
C:=TCanvas.Create; for i:=1 to 50 do C.Pixels[x+i,5]:=clRed;// C.Free;
end;
这就不会报错
TO liuziran(倒立旋风转的青蛙) :
你挺了解重庆人的,哈~~~~~~~~~
Canvas没有指定图形的输出设备。系统都不知道你要往什么上面画.
上面说这个的是对的,不过38个大老爷们,你嫁谁啊?
我不是重庆的!
但我要为重庆人说句话!
你这个锤子,你怎么知道重庆人是同性恋,你才是呢!
-----------------------------------------------------------------
何必呢!!!!!!!!!!!!!!!!!!!!!
不对
杭州的帅哥相亲..可惜csdn里面mm太少.....
说得好,敬王子一杯~~~~~~~~~
var
Canvas: TCanvas;
x,y,i,j: Integer;begin
x:=20;
Canvas:=TCanvas.Create; for i:=1 to 50 do Canvas.Pixels[x+i,5]:=clRed;// Canvas.Free;
end;你要干吗?
var
Canvas: TCanvas;
begin
x,y,i,j: Integer;//变量定义位置出错
x:=20;
Canvas:=TCanvas.Create;//这里 for i:=1 to 50 do Canvas.Pixels[x+i,5]:=clRed;// Canvas.Free;
end;
/////////////////////////////////////
procedure TForm1.Button1Click(Sender: TObject);
var
Canvas: TCanvas;
x,y,i,j: Integer;
begin
x:=20;
Canvas:=TCanvas.Createa(self);
for i:=1 to 50 do
Canvas.Pixels[x+i,5]:=clRed;//
Canvas.Free;
end;
下面的正确,delphi7调试通过! :)
procedure TForm1.Button1Click(Sender: TObject);
var
x,y,i,j: Integer;
begin
x:=20;
for i:=1 to 50 do
Canvas.Pixels[x+i,5]:=clRed;//
end;
我在上海,你在哪?有空出来喝酒!
嘿,当然是在重庆了.
要不然怎能娶楼主?
晕,你准备娶楼主了啊?我到是觉得重庆男人找成都女人比较好,刚柔相济嘛,要不,两个烈性子在一起,一年不知要代谢多少锅碗瓢盆哦:)
哈哈,老兄弦外之音我听出来了......
行,我忍痛割爱,让你和楼主来个刚柔相济~~~~~~~上海男人脾气不错.
我晕!我老家在扬州,只是在上海工作,MM在成都:),我对重庆人的了解,也是通过我MM和她朋友的介绍才知道一些的,事实上在现实中我没有和重庆的MM打过交道
Canvas:=TCanvas.Create(application);
好哈,没问题