📄 umain.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include <Inifiles.hpp>
#include "UMain.h"
//启动画面的头文件
#include "ULoading.h"
//自定义的消息框所需的头文件
#include "UMsgBox.h"
//自定义的数据类型
//=========================
#include "UProject.h"
#include "UTeacher.h"
#include "UDepartment.h"
#include "UAchievement.h"
#include "USalary.h"
#include "USQuery.h"
#include "UConfig.h"
#include "UMQuery.h"
#include "UDM.h"
//=========================
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormMain *FormMain;
TFormLoading *FormLoading;
TFormProject *FormProject;
TFormTeacher *FormTeacher;
TFormAchievement *FormAchievement;
TFormSalary *FormSalary;
TFormSQuery *FormSQuery;
TFormConfig *FormConfig;
TFormMQuery *FormMQuery;
TIniFile *ini;
AnsiString Str;
TFormMsgBox *MsgBox;
//---------------------------------------------------------------------------
__fastcall TFormMain::TFormMain(TComponent* Owner)
: TFormTemplate(Owner)
{ //窗体构造函数
//LabelCaption->Caption="科研人事管理系统";
SBtnMax->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::FormCreate(TObject *Sender)
{
//创建程序启动画面;
FormLoading=new TFormLoading(Application);
FormLoading->Show();
FormLoading->Update();
Sleep(1000);
//标实当前弹出的是启动画面,使窗口不响应任何操作;
FormLoading->isloading=true;
if(FileExists("Picture\\Main.bmp"))
ImageMain->Picture->LoadFromFile("Picture\\Main.bmp");
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::FormShow(TObject *Sender)
{
//删除程序启动画面;
if(FormLoading->isloading)
{
FormLoading->Close();
delete FormLoading;
FormLoading->isloading=false;
}
if(!FileExists("Database.mdb"))
{
MsgBox=new TFormMsgBox(Application);
MsgBox->MsgBox("警告","系统没有检测到数据库文件DataBase.mdb\n\n建议从备份份点还原或手动还原。",MBOKONLY,MBWARNING);
delete MsgBox;
}
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::Label1MouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y)
{
if(Button == mbLeft)//判断是否按了鼠标左键
{
ReleaseCapture();//释放鼠标操作
SendMessage(Handle, WM_NCLBUTTONDOWN,HTCAPTION,0);
}
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::FormCloseQuery(TObject *Sender, bool &CanClose)
{
MsgBox=new TFormMsgBox(Application);
MsgBox->MsgBox("提示"," 是否退出程序?",MBOKCANCEL,MBINFORMATION);
if(MsgBox->Id==IDYES)
{
Update();
ini = new TIniFile(ChangeFileExt( Application->ExeName, ".dat" ) );
bool AutoBackup=ini->ReadBool("Backupcfg", "AutoBackup",false);
Str=ini->ReadString("Backupcfg", "FileName","");
if(AutoBackup)
{
LabelBackup->Visible=true;
Update();
Sleep(500);
CopyFile("DataBase.mdb",Str.c_str(),0);
LabelBackup->Caption="备份完毕,正在退出系统...";
Update();Sleep(1000);
}
Application->Terminate();
}
else
{
delete MsgBox;
Abort();
}
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::SBtnCloseClick(TObject *Sender)
{
bool Can;
FormCloseQuery(Sender, Can);
}
void __fastcall TFormMain::A2Click(TObject *Sender)
{
//TFormMsgBox *MsgBox=new TFormMsgBox(Application);
//MsgBox->MsgBox("关于","科研人事管理系统\n\n界面设计与制作:袁军 2004.5",MBOKONLY,MBINFORMATION);
//delete MsgBox;
TFormLoading *FormAbout=new TFormLoading(Application);
//标实当前弹出的是关于窗口,使窗口响应鼠标和键盘操作;
FormAbout->isloading=false;
FormAbout->ShowModal();
delete FormAbout;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::N3Click(TObject *Sender)
{
FormProject=new TFormProject(Application);
DM->ADOQProject->Active=true;
DM->ADOQAttender->Active=true;
FormProject->ShowModal();
delete FormProject;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::T1Click(TObject *Sender)
{
FormTeacher=new TFormTeacher(Application);
DM->ADOQTeacher->Active=true;
DM->ADOQSalary->Active=true;
DM->ADOQDepartment->Active=true;
FormTeacher->ShowModal();
delete FormTeacher;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::D1Click(TObject *Sender)
{
TFormDepartment *FormDepartment=new TFormDepartment(Application);
DM->ADOQDepartment->Active=true;
FormDepartment->ShowModal();
delete FormDepartment;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::FormResize(TObject *Sender)
{
ImageMain->Width=FormMain->ClientWidth-2;
ImageMain->Height=FormMain->ClientHeight-20;
Shape1->Width=FormMain->ClientWidth;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::A3Click(TObject *Sender)
{
FormAchievement=new TFormAchievement(Application);
DM->ADOQAchievement->Active=true;
DM->ADOQProject->Active=true;
DM->ADOQAttender->Active=true;
DM->ADOQReward->Active=true;
FormAchievement->ShowModal();
delete FormAchievement;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::N4Click(TObject *Sender)
{
FormSalary=new TFormSalary(Application);
DM->ADOQSalary->Active=true;
FormSalary->ShowModal();
delete FormSalary;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::N7Click(TObject *Sender)
{
FormSQuery=new TFormSQuery(Application);
FormSQuery->ShowModal();
delete FormSQuery;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::C2Click(TObject *Sender)
{
FormConfig=new TFormConfig(Application);
FormConfig->ShowModal();
delete FormConfig;
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::N1Click(TObject *Sender)
{
ini = new TIniFile(ChangeFileExt( Application->ExeName, ".dat" ) );
Str=ini->ReadString("Backupcfg", "FileName","");
if(Str!="")
{
CopyFile("DataBase.mdb",Str.c_str(),0);
MsgBox=new TFormMsgBox(Application);
MsgBox->MsgBox("恭喜","数据库备份到\n\n"+Str+" 成功!",MBOKONLY,MBINFORMATION);
delete MsgBox;
delete ini;
}
else
{
MsgBox=new TFormMsgBox(Application);
MsgBox->MsgBox("错误"," 请在备份设置中设置备份路径!",MBOKONLY,MBERROR);
delete MsgBox;
C2Click(Sender);
}
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::N10Click(TObject *Sender)
{
ini = new TIniFile(ChangeFileExt( Application->ExeName, ".dat" ) );
Str=ini->ReadString("Backupcfg", "FileName","");
if(Str!="")
{
MsgBox=new TFormMsgBox(Application);
MsgBox->MsgBox("还原数据库","还原数据库可能导致最近的数据丢失,\n\n\确定还原数据库吗?",MBOKCANCEL,MBINFORMATION);
if(MsgBox->Id==IDYES)
{
CopyFile(Str.c_str(),"DataBase.mdb",0);
MsgBox->MsgBox("恭喜","数据库从\n\n"+Str+" 还原成功!",MBOKONLY,MBINFORMATION);
delete MsgBox;
}
}
else
{
MsgBox=new TFormMsgBox(Application);
MsgBox->MsgBox("错误","没找到配置文件!无法还原数据库!",MBOKONLY,MBERROR);
delete MsgBox;
}
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::N8Click(TObject *Sender)
{
FormMQuery=new TFormMQuery(Application);
FormMQuery->ShowModal();
delete FormMQuery;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -