这是我的整个代码:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Images: array[0..29,0..39] of TImage; //array
implementation
{$R *.dfm}
//form create
procedure TForm1.FormCreate(Sender: TObject);
var xx,yy: Integer; //local variables
begin
for xx:=0 to 29 do
for yy:=0 to 39 do
begin
Images[xx,yy]:=Timage.Create(Form1);
Images[xx,yy].Canvas.Rectangle(0,0,17,17);
Images[xx,yy].Left:=xx*16;
Images[xx,yy].Top:=yy*16;
end;
end;
end.
而且我总是收到错误:“Project Project1.exe 引发了异常类 EClassNotFound,并显示消息“TImage 未找到”。进程已停止。使用步骤或运行来继续强>“
我尝试过互联网上的其他代码,例如:
Delphi: TImage.Create causes Access violation
http://www.delphi-central.com/tutorials/memory_game_2.aspx
没有任何帮助!为什么会发生这种情况?
谢谢。
最佳答案
您确定在 TImage.Create 行中遇到异常吗?难道您有一个无效的 DFM 文件仍然包含 TForm1 声明中缺少的 TImage 实例?
通常,在表单或数据模块中用作子级的所有类都会自动注册用于流式传输。由于表单中没有声明 TImage,并且应用程序的其他表单中没有包含 TImage,因此无需注册。
您可以通过将 TImage 拖放到表单上来进行简单测试。
关于arrays - Delphi:TImage 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10329171/