运行时出现以下错误是什么原因,怎么改正(附代码)
刚刚接触BCB 很多地方明白 用这个做毕业设计 添加完了登陆代码 就运行不过去了 大家帮我看看 我应该怎么改正!非常感谢!
[Linker Error] Unresolved external '_fmLogin' referenced from D:\酒店管理系统\代码\MAIN.OBJ
[Linker Error] Unresolved external 'TfmLogin::' referenced from D:\酒店管理系统\代码\MAIN.OBJ
[Linker Error] Unresolved external '__fastcall TfmLogin::TfmLogin(Classes::TComponent *)' referenced from D:\酒店管理系统\代码\MAIN.OBJ
[Linker Error] Unresolved external 'TfmSet::' referenced from D:\酒店管理系统\代码\MAIN.OBJ
[Linker Error] Unresolved external '__fastcall TfmSet::TfmSet(Classes::TComponent *)' referenced from D:\酒店管理系统\代码\MAIN.OBJ
main ccp 代码
//--------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Main.h"
#include "RoomType.h"
#include "Room.h"
#include "PreOrder.h"
#include "RoomStatus.h"
#include "CheckIn.h"
#include "CheckSer.h"
#include "CheckOut.h"
#include "Login.h"
#include "Set.h"
//---------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfmMain *fmMain;
TfmLogin *fmLogin;
//---------------------------------------------------------
__fastcall TfmMain::TfmMain(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------
// 注意该函数为自定义函数,应该在h头文件中添加如下相应的申明
//public: // User declarations
//判断子窗体是否存在
//TForm* FormExist(AnsiString szCaption);
TForm* TfmMain::FormExist(AnsiString szCaption)
{
for(int i=0; i<this->MDIChildCount; i++)
{
TForm *pForm = this->MDIChildren[i];
if(pForm->Caption == szCaption)
return pForm; // 已存在窗体,返回该窗体
}
return NULL; // 不存在窗体,返回空值
}
//---------------------------------------------------------
void __fastcall TfmMain::mnuExitClick(TObject *Sender)
{
Application->Terminate();
}
//-------------------------------------------------------------
void __fastcall TfmMain::mnuRoomTypeClick(TObject *Sender)
{
// 客房类别设置
TForm *pForm = FormExist("客房类别设置");
// 如果已存在则激活,否则新建一个字窗体
if(pForm)
pForm->SetFocus();
else
pForm = new TfmRoomType(Application);
pForm->Show();
}
//-------------------------------------------------------------
void __fastcall TfmMain::mnuRoomClick(TObject *Sender)
{
// 客房信息设置
TForm *pForm = FormExist("客房信息设置");
// 如果已存在则激活,否则新建一个字窗体
if(pForm)
pForm->SetFocus();
else
pForm = new TfmRoom(Application);
pForm->Height = 530;
pForm->Show();
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::mmuPreOrderClick(TObject *Sender)
{
// 预定管理
TForm *pForm = FormExist("预定管理");
// 如果已存在则激活,否则新建一个字窗体
if(pForm)
pForm->SetFocus();
else
pForm = new TfmPreOrder(Application);
pForm->Height = 530;
pForm->Show();
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::mnuCheckInClick(TObject *Sender)
{
// 入住管理
TForm *pForm = FormExist("入住管理");
// 如果已存在则激活,否则新建一个字窗体
if(pForm)
pForm->SetFocus();
else
pForm = new TfmCheckIn(Application);
pForm->Height = 530;
pForm->Show();
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::mnuCheckSerClick(TObject *Sender)
{
// 消费记帐
TForm *pForm = FormExist("消费记帐");
// 如果已存在则激活,否则新建一个字窗体
if(pForm)
pForm->SetFocus();
else
pForm = new TfmCheckSer(Application);
pForm->Height = 530;
pForm->Show();
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::mnuCheckOutClick(TObject *Sender)
{
// 收银退房管理
TForm *pForm = FormExist("收银退房");
// 如果已存在则激活,否则新建一个字窗体
if(pForm)
pForm->SetFocus();
else
pForm = new TfmCheckOut(Application);
pForm->Height = 530;
pForm->Show();
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::mnuRoomStautsClick(TObject *Sender)
{
// 房态图管理
TForm *pForm = FormExist("房态图");
// 如果已存在则激活,否则新建一个字窗体
if(pForm)
pForm->SetFocus();
else
pForm = new TfmRoomStatus(Application);
// 可以编辑房态
((TfmRoomStatus*)pForm)->SetSelect(1);
pForm->Height = 530;
pForm->Show();
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::FormPaint(TObject *Sender)
{
if(fmLogin-> Set > 0)
{
mnuInfo->Enabled = true;
mnuHotel->Enabled = true;
mnuRoomStauts->Enabled = true;
mnuExit->Enabled = true;
N1->Enabled = true;
}
else
{
mnuInfo->Enabled = false;
mnuHotel->Enabled = false;
mnuRoomStauts->Enabled = false;
mnuExit->Enabled = false;
N1->Enabled = false;
}
if(fmLogin->qx>0)
{
N3->Enabled = true;
}
else
{
N3->Enabled = false;
}
}
//---------------------------------------------------------------------------void __fastcall TfmMain::N2Click(TObject *Sender)
{
TfmLogin *fmLogin = new TfmLogin(this);
fmLogin->Show();
}
//---------------------------------------------------------------------------
void __fastcall TfmMain::N3Click(TObject *Sender)
{
TfmSet *fmSet = new TfmSet(this);
fmSet->Show();
}
//---------------------------------------------------------------------------
main .h代码
//---------------------------------------------------------------------------
#ifndef MainH
#define MainH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Menus.hpp>
#include <ComCtrls.hpp>
#include <ExtCtrls.hpp>
#include <jpeg.hpp>
//---------------------------------------------------------------------------
class TfmMain : public TForm
{
__published: // IDE-managed Components
TMainMenu *MainMenu1;
TMenuItem *mnuInfo;
TMenuItem *mnuHotel;
TMenuItem *mmuPreOrder;
TMenuItem *mnuRoomType;
TMenuItem *mnuRoom;
TMenuItem *mnuCheckIn;
TStatusBar *StatusBar1;
TMenuItem *mnuRoomStauts;
TMenuItem *mnuExit;
TMenuItem *mnuCheckOut;
TMenuItem *mnuCheckSer;
TMenuItem *N1;
TMenuItem *N2;
TMenuItem *N3;
TImage *Image1;
void __fastcall mnuRoomTypeClick(TObject *Sender);
void __fastcall mnuExitClick(TObject *Sender);
void __fastcall mnuRoomClick(TObject *Sender);
void __fastcall mmuPreOrderClick(TObject *Sender);
void __fastcall mnuCheckInClick(TObject *Sender);
void __fastcall mnuRoomStautsClick(TObject *Sender);
void __fastcall mnuCheckOutClick(TObject *Sender);
void __fastcall mnuCheckSerClick(TObject *Sender);
void __fastcall FormPaint(TObject *Sender);
void __fastcall N2Click(TObject *Sender);
void __fastcall N3Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TfmMain(TComponent* Owner);
// 判断子窗体是否存在
TForm* FormExist(AnsiString szCaption);
};
//---------------------------------------------------------------------------
extern PACKAGE TfmMain *fmMain;
//---------------------------------------------------------------------------
#endif