总是放不开自己怎么办:Delphi问题

来源:百度文库 编辑:高考问答 时间:2024/04/29 03:11:58
在制作一个Splash窗口时遇到的问题,我的制作步骤如下:
1.创建一个新项目,添加一个文本框控件,将caption值改为welcome to delphi7!
2.创建Splash窗体.新建一个窗体设好各种属性.
3.实现Splash窗体.添加代码:application.Initialize;
splash:=Tsplash.Create(application);
Splash.Show;
Splash.update;
application.CreateForm(Tform1,form1);
splash. free;
application.Run;
4.在主窗体的oncreate事件中添加代码:
var
CurTime:LongWord;
Delaytime:LongWord;
begin
delaytime:=5000;
curtime:=GetTickCount ;
while(gettickcount<(curtime+delaytime))do;
当运行时总时出现这两个错误:
[Error] Unit2.pas(32): Undeclared identifier: 'TForm1'
[Fatal Error] Project1.dpr(6): Could not compile used unit 'Unit2.pas'
请问怎么修改????????
是Splash窗体

我这样试着是可以的:
Unit1~~Form1:主窗体
Unit2~~splash Splash窗体
project->Options:把Splash窗体设为非自动产生窗体

procedure TForm1.FormCreate(Sender: TObject);
var
CurTime:LongWord;
Delaytime:LongWord;
begin
delaytime:=5000;
curtime:=GetTickCount ;
while(gettickcount<(curtime+delaytime))do
Application.ProcessMessages; //建议加上该句。

end;

program Project1;

uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {splash};

{$R *.res}

begin
Application.Initialize;
splash:=Tsplash.Create(application);
Splash.Show;
Splash.update;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.

Delphi6+win2k 编译,运行,通过。

未定义的TForm1,然后提示Unit2单元不能编译,你可能未USE TFORM1,也可能你把TFORM1改名了,而在代码中又用了它.你双击这个ERROR,看看定位在那里,再联系上下看一下,像这样的提示不般不是大问题!

Unit2.pas 是哪个窗体的?