首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >德尔菲: TImage数组

德尔菲: TImage数组
EN

Stack Overflow用户
提问于 2012-04-26 07:43:23
回答 2查看 5.6K关注 0票数 4

这是我的全部代码:

代码语言:javascript
复制
    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.

我总是收到错误:“ Project1.exe引发了异常类EClassNotFound,并带有消息"TImage not”。进程停止。使用step或run继续

我曾在互联网上尝试过其他密码,例如:

Delphi: TImage.Create causes Access violation

http://www.delphi-central.com/tutorials/memory_game_2.aspx

什么都帮不上忙!为什么会发生这种情况?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-26 07:53:17

您确定在TImage.Create行中得到了异常吗?是否有一个无效的DFM文件仍然包含一个TImage实例,这个实例在TForm1声明中丢失了?

通常,在窗体或数据模式中用作子类的所有类都会自动注册为流。由于表单中没有声明TImage,也没有其他形式的应用程序包含TImage,因此没有注册。

您只需将TImage放到表单上即可进行测试。

票数 8
EN

Stack Overflow用户

发布于 2012-04-26 11:16:55

如果要以形式显示,请将以下代码添加到循环:

代码语言:javascript
复制
Images[xx,yy].Parent:= Self;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10329171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档