使用application.create创建登录窗口老是编译不通过
本帖最后由 dth886 于 2012-06-23 13:43:00 编辑 [code=Delphi(Pascal)]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, DB, DBTables;
type
Tmainform = class(TForm)
MainMenu1: TMainMenu;
Database1: TDatabase;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N21: TMenuItem;
N211: TMenuItem;
N221: TMenuItem;
N231: TMenuItem;
N5: TMenuItem;
N311: TMenuItem;
N321: TMenuItem;
N331: TMenuItem;
procedure N2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
mainform: Tmainform;
implementation
{$R *.dfm}
procedure Tmainform.N2Click(Sender: TObject);
begin
application.CreateForm(TloginForm,loginForm);
loginform.show;
end;
end.
希望是点击菜单项的时候出来登录框的,却老是报错:
[Error] Unit1.pas(41): Undeclared identifier: 'TloginForm'
[Error] Unit1.pas(41): Undeclared identifier: 'loginForm'
[Error] Unit1.pas(42): Missing operator or semicolon
[Fatal Error] Project2.dpr(5): Could not compile used unit 'Unit1.pas'
怎么回事儿啊?难道还要先对TloginForm提前定义?
[解决办法]
菜单那里use以下,你的登录窗口的单元名不是loginForm
[解决办法]
你在本工程内没有创建loginForm?
[解决办法]
在你的单元中要定义
var
loginForm:TloginForm
找不到这个定义 所以
[Error] Unit1.pas(41): Undeclared identifier: 'loginForm'
要在使用到 loginForm
的单元处 uses loginForm所在的单元