📄 yxman.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "YXMan.h"
#include "CommonFrm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TfrmYXMan *frmYXMan;
//---------------------------------------------------------------------------
__fastcall TfrmYXMan::TfrmYXMan(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::btn_AddyxClick(TObject *Sender)
{
TfrmCommon *fm=new TfrmCommon(this);
fm->Caption="添加院系";
fm->method=ADDYX;
fm->ShowModal();
delete fm;
RefreshYX();
lis_Major->Clear();
lis_Grade->Clear();
lis_Class->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::btn_CancelClick(TObject *Sender)
{
Close();
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::btn_AddmajorClick(TObject *Sender)
{
if(lis_Yx->ItemIndex==-1)
{
Application->MessageBoxA("请选择要添加专业所属的院系!","警告!",MB_OK);
return;
}
TfrmCommon *fm=new TfrmCommon(this);
fm->Caption="添加专业";
fm->method=ADDMAJOR;
int i=lis_Yx->ItemIndex;
ADODataSet1->CommandText="select id from tbyx where name='" + lis_Yx->Items->Strings[i] + "'";
ADODataSet1->Open();
fm->id1=ADODataSet1->FieldByName("id")->AsString;
ADODataSet1->Close();
fm->ShowModal();
delete fm;
RefreshYX();
lis_Major->Clear();
lis_Grade->Clear();
lis_Class->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::btn_AddgradeClick(TObject *Sender)
{
TfrmCommon *fm=new TfrmCommon(this);
fm->Caption="添加年级";
fm->method=ADDGRADE;
fm->ShowModal();
delete fm;
RefreshYX();
lis_Major->Clear();
lis_Grade->Clear();
lis_Class->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::btn_AddclassClick(TObject *Sender)
{
if((lis_Major->ItemIndex<0)||(lis_Grade->ItemIndex<0))
{
Application->MessageBoxA("请选择要添加班级所属的专业和年级!","警告!",MB_OK);
return;
}
TfrmCommon *fm=new TfrmCommon(this);
fm->Caption="添加班级";
fm->method=ADDCLASS;
ADODataSet1->CommandText="select id from tbMajor where name='" + lis_Major->Items->Strings[lis_Major->ItemIndex]+ "'";
ADODataSet1->Open();
fm->id1=ADODataSet1->FieldByName("id")->AsString;
ADODataSet1->Close();
ADODataSet1->CommandText="select id from tbGrade where name='" + lis_Grade->Items->Strings[lis_Grade->ItemIndex]+"'";
ADODataSet1->Open();
fm->id2=ADODataSet1->FieldByName("id")->AsString;
ADODataSet1->Close();
fm->ShowModal();
delete fm;
RefreshYX();
lis_Major->Clear();
lis_Grade->Clear();
lis_Class->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::RefreshYX()
{
lis_Yx->Clear();
ADODataSet1->CommandText="select name from tbYX";
ADODataSet1->Open();
if(!ADODataSet1->Eof)
{
ADODataSet1->First();
}
while(!ADODataSet1->Eof)
{
lis_Yx->Items->Add(ADODataSet1->FieldByName("name")->AsString);
ADODataSet1->Next();
}
ADODataSet1->Close();
}
void __fastcall TfrmYXMan::RefreshMajor(String yx)
{
String yxid;
lis_Major->Clear();
ADODataSet1->CommandText="select id from tbyx where name='" + yx +"'";
ADODataSet1->Open();
yxid=ADODataSet1->FieldByName("id")->AsString;
ADODataSet1->Close();
ADODataSet1->CommandText="select name from tbMajor where yxid=" +yxid;
ADODataSet1->Open();
if(!ADODataSet1->Eof)
{
ADODataSet1->First();
}
while(!ADODataSet1->Eof)
{
lis_Major->Items->Add(ADODataSet1->FieldByName("name")->AsString);
ADODataSet1->Next();
}
ADODataSet1->Close();
}
void __fastcall TfrmYXMan::RefreshGrade()
{
lis_Grade->Clear();
ADODataSet1->CommandText="select name from tbGrADE";
ADODataSet1->Open();
if(!ADODataSet1->Eof)
{
ADODataSet1->First();
}
while(!ADODataSet1->Eof)
{
lis_Grade->Items->Add(ADODataSet1->FieldByName("name")->AsString);
ADODataSet1->Next();
}
ADODataSet1->Close();
}
void __fastcall TfrmYXMan::RefreshClass(String major,String grade)
{
String majorid,gradeid;
lis_Class->Clear();
ADODataSet1->CommandText="select id from tbMajor where name='" + major +"'";
ADODataSet1->Open();
majorid=ADODataSet1->FieldByName("id")->AsString;
ADODataSet1->Close();
ADODataSet1->CommandText="select id from tbGrade where name='" + grade + "'";
ADODataSet1->Open();
gradeid=ADODataSet1->FieldByName("id")->AsString;
ADODataSet1->Close();
ADODataSet1->CommandText="select name from tbClass where majorid=" +majorid + " and gradeid=" + gradeid;
ADODataSet1->Open();
if(!ADODataSet1->Eof)
{
ADODataSet1->First();
}
while(!ADODataSet1->Eof)
{
lis_Class->Items->Add(ADODataSet1->FieldByName("name")->AsString);
ADODataSet1->Next();
}
ADODataSet1->Close();
}
void __fastcall TfrmYXMan::lis_yx_onclick(TObject *Sender)
{
if(lis_Yx->ItemIndex>=0)
{
RefreshMajor(lis_Yx->Items->Strings[lis_Yx->ItemIndex]);
lis_Grade->Clear();
lis_Class->Clear();
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::lis_MajorClick(TObject *Sender)
{
if(lis_Major->ItemIndex>=0)
{
RefreshGrade();
lis_Class->Clear();
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::lis_GradeClick(TObject *Sender)
{
if(lis_Grade->ItemIndex>=0)
{
RefreshClass(lis_Major->Items->Strings[lis_Major->ItemIndex],lis_Grade->Items->Strings[lis_Grade->ItemIndex]);
}
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::btn_UpdyxClick(TObject *Sender)
{
if(lis_Yx->ItemIndex<0)
{
Application->MessageBoxA("请选择要修改的院系信息!","警告!",MB_OK);
return;
}
TfrmCommon *fm=new TfrmCommon(this);
fm->Caption="修改院系";
fm->method=UPDYX;
fm->id1=lis_Yx->Items->Strings[lis_Yx->ItemIndex];
fm->ShowModal();
delete fm;
RefreshYX();
lis_Major->Clear();
lis_Grade->Clear();
lis_Class->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TfrmYXMan::btn_DelyxClick(TObject *Sender)
{
if(lis_Yx->ItemIndex<0)
{
Application->MessageBoxA("请选择要删除的院系!","警告!",MB_OK);
return;
}
int i=Application->MessageBoxA("如果删除院系则该院系下的所有专业以及该专业中的班级和毕业生信息都将被删除!是否继续?","警告!",MB_OKCANCEL);
if(i==IDOK)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -