📄 statics.cpp
字号:
// Statics.cpp : implementation file
//
#include "stdafx.h"
#include "教学管理系统.h"
#include "Statics.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// Statics dialog
Statics::Statics(CWnd* pParent /*=NULL*/)
: CDialog(Statics::IDD, pParent)
{
//{{AFX_DATA_INIT(Statics)
data = _T("");
//}}AFX_DATA_INIT
}
void Statics::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(Statics)
DDX_Control(pDX, IDC_LIST1, list);
DDX_Control(pDX, IDC_STATIC_MEATH, box);
DDX_Text(pDX, IDC_STATIC_INPUT, data);
//}}AFX_DATA_MAP
}
BOOL Statics::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化
box.AddString("按课程号输出");
box.AddString("按课程名称输出");
box.AddString("按教师姓名输出");
box.AddString("按系号输出");
DWORD dwExStyle=LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP ;
list.SetExtendedStyle(dwExStyle);
for(int i=1;i<=8;i++){
list.InsertColumn(0,"",LVCFMT_CENTER,110);
}
select=-1;
chose=-1;
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
BEGIN_MESSAGE_MAP(Statics, CDialog)
//{{AFX_MSG_MAP(Statics)
ON_BN_CLICKED(IDC_RADIO1, OnRadio1)
ON_BN_CLICKED(IDC_RADIO2, OnRadio2)
ON_BN_CLICKED(IDC_STATIC_OK, OnStaticOk)
ON_BN_CLICKED(IDC_STATIC_OUTPUT, OnStaticOutput)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// Statics message handlers
void Statics::OnRadio1()
{
// TODO: Add your control notification handler code here
select=1;
}
void Statics::OnRadio2()
{
// TODO: Add your control notification handler code here
select=2;
}
void Statics::OnCancel()
{
// TODO: Add extra cleanup here
EndDialog(0);
}
void Statics::OnStaticOk()
{
// TODO: Add your control notification handler code here
UpdateData(true);
int i= box.GetCurSel();
if(i==0){chose=1;}
if(i==1){chose=2;}
if(i==2){chose=3;}
if(i==3){chose=4;}
if(i==4){chose=5;}
if(select==-1){AfxMessageBox("请选择报表形式");return;}
if(chose==-1){AfxMessageBox("请选择输入方式");return;}
if(data.IsEmpty()){AfxMessageBox("请输入资料");return;}
if(select==1)
{
if(chose==1)//按课程号输出
{
list.DeleteAllItems();int flag=0;int nIndex;
CString course="",a="",b="",c="",d="",e="",f="",g="",h="",sSql="",sql="",number="",name="",sex="";
connection1.Initialize();
sSql.Format("select * from 课程 where 课程号='%s'",data);
connection1.Connect(sSql);
if((connection1.m_pRecordset->adoEOF))
{AfxMessageBox("没有课程记录");
connection1.Unitialize();
return ;}
connection1.m_pRecordset->MoveFirst();
while(!connection1.m_pRecordset->adoEOF)//找存在的每个课程号课程
{ _variant_t TheValue;
TheValue = connection1.m_pRecordset->Fields->GetItem("课程号")->Value;
course=TheValue.bstrVal;//对每个找到的课程号进行处理
flag=0;
connection2.Initialize();
sql.Format("select * from 课程 where 课程号='%s' ",course);
connection2.Connect(sql);
connection2.m_pRecordset->MoveFirst();
while(!connection2.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection2.m_pRecordset->Fields->GetItem("课程号")->Value;
a=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("课程名称")->Value;
b=TheValue.bstrVal;
float credit = connection2.m_pRecordset->Fields->GetItem("学分")->Value;
c.Format("%g",credit);
TheValue = connection2.m_pRecordset->Fields->GetItem("学时")->Value;
d=TheValue.bstrVal;
connection2.m_pRecordset->MoveNext();
}
connection2.Unitialize();
flag=0;
connection2.Initialize();
sql.Format("select * from 教学 where 课程号='%s'",course);
connection2.Connect(sql);
if(connection2.m_pRecordset->adoEOF)
{connection2.Unitialize(); flag=1;}
if(flag==0)
{
connection2.m_pRecordset->MoveFirst();
while(!connection2.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection2.m_pRecordset->Fields->GetItem("职工号")->Value;
e=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("上课时间")->Value;
f=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("上课地点")->Value;
g=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("考试时间")->Value;
h=TheValue.bstrVal;
nIndex= list.InsertItem(0,"");
list.SetItemText(nIndex,1,"");
list.SetItemText(nIndex,2,"");
list.SetItemText(nIndex,3,"");
list.SetItemText(nIndex,4,"");
list.SetItemText(nIndex,5,"");
nIndex= list.InsertItem(0,"");
list.SetItemText(nIndex,1,"");
list.SetItemText(nIndex,2,"");
list.SetItemText(nIndex,3,"");
list.SetItemText(nIndex,4,"");
list.SetItemText(nIndex,5,"");
//找到教该课程的一个老师
flag=0;
connection3.Initialize();
sql.Format("select * from 选修 where 课程号='%s'and 教师号='%s'order by 学号 desc",course,e);
connection3.Connect(sql);
if(connection3.m_pRecordset->adoEOF)
{connection3.Unitialize(); flag=1;}
if(flag==0)
{connection3.m_pRecordset->MoveFirst();
while(!connection3.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection3.m_pRecordset->Fields->GetItem("学号")->Value;
number=TheValue.bstrVal;//得到一个学生的学号
flag=0;
connection4.Initialize();
sql.Format("select * from 学生 where 学号='%s' ",number);
connection4.Connect(sql);
if(connection4.m_pRecordset->adoEOF)
{connection4.Unitialize(); flag=1;}
if(flag==0)
{connection4.m_pRecordset->MoveFirst();
while(!connection4.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection4.m_pRecordset->Fields->GetItem("姓名")->Value;
name=TheValue.bstrVal;
TheValue = connection4.m_pRecordset->Fields->GetItem("性别")->Value;
sex=TheValue.bstrVal;
//得到一个学生的资料
nIndex= list.InsertItem(0,number);
list.SetItemText(nIndex,1,name);
list.SetItemText(nIndex,2,sex);
list.SetItemText(nIndex,3,"");
list.SetItemText(nIndex,4,"" );
connection4.m_pRecordset->MoveNext();
}
connection4.Unitialize();
}
connection3.m_pRecordset->MoveNext();
}
connection3.Unitialize();
}
nIndex= list.InsertItem(0,"学号");
list.SetItemText(nIndex,1,"姓名");
list.SetItemText(nIndex,2,"性别");
list.SetItemText(nIndex,3,"平时成绩");
list.SetItemText(nIndex,4,"考试成绩");
list.SetItemText(nIndex,5,"总评成绩");
nIndex= list.InsertItem(0,"职工号:");
list.SetItemText(nIndex,1,e);
list.SetItemText(nIndex,2,"上课时间:");
list.SetItemText(nIndex,3,f);
list.SetItemText(nIndex,4,"上课地点:");
list.SetItemText(nIndex,5,g);
list.SetItemText(nIndex,6,"考试时间:");
list.SetItemText(nIndex,7,h);
nIndex= list.InsertItem(0,"课程号:");
list.SetItemText(nIndex,1,a);
list.SetItemText(nIndex,2,"课程名称:");
list.SetItemText(nIndex,3,b);
list.SetItemText(nIndex,4,"学分:");
list.SetItemText(nIndex,5,c);
list.SetItemText(nIndex,6,"学时:");
list.SetItemText(nIndex,7,d);
connection2.m_pRecordset->MoveNext();
}
connection2.Unitialize();
}
connection1.m_pRecordset->MoveNext();
}
connection1.Unitialize();
}
if(chose==2)//按课程名称输出
{UpdateData(true);
list.DeleteAllItems();int flag=0;int nIndex;
CString course="",a="",b="",c="",d="",e="",f="",g="",h="",sSql="",sql="",number="",name="",sex="";
connection1.Initialize();
sSql.Format("select * from 课程 where 课程名称='%s'",data);
connection1.Connect(sSql);
if((connection1.m_pRecordset->adoEOF))
{AfxMessageBox("没有课程记录");
connection1.Unitialize();
return ;}
connection1.m_pRecordset->MoveFirst();
while(!connection1.m_pRecordset->adoEOF)//找存在的每个课程号课程
{ _variant_t TheValue;
TheValue = connection1.m_pRecordset->Fields->GetItem("课程号")->Value;
course=TheValue.bstrVal;//对每个找到的课程号进行处理
flag=0;
connection2.Initialize();
sql.Format("select * from 课程 where 课程号='%s' ",course);
connection2.Connect(sql);
connection2.m_pRecordset->MoveFirst();
while(!connection2.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection2.m_pRecordset->Fields->GetItem("课程号")->Value;
a=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("课程名称")->Value;
b=TheValue.bstrVal;
float credit = connection2.m_pRecordset->Fields->GetItem("学分")->Value;
c.Format("%g",credit);
TheValue = connection2.m_pRecordset->Fields->GetItem("学时")->Value;
d=TheValue.bstrVal;
connection2.m_pRecordset->MoveNext();
}
connection2.Unitialize();
flag=0;
connection2.Initialize();
sql.Format("select * from 教学 where 课程号='%s'",course);
connection2.Connect(sql);
if(connection2.m_pRecordset->adoEOF)
{connection2.Unitialize(); flag=1;}
if(flag==0)
{
connection2.m_pRecordset->MoveFirst();
while(!connection2.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection2.m_pRecordset->Fields->GetItem("职工号")->Value;
e=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("上课时间")->Value;
f=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("上课地点")->Value;
g=TheValue.bstrVal;
TheValue = connection2.m_pRecordset->Fields->GetItem("考试时间")->Value;
h=TheValue.bstrVal;
nIndex= list.InsertItem(0,"");
list.SetItemText(nIndex,1,"");
list.SetItemText(nIndex,2,"");
list.SetItemText(nIndex,3,"");
list.SetItemText(nIndex,4,"");
list.SetItemText(nIndex,5,"");
nIndex= list.InsertItem(0,"");
list.SetItemText(nIndex,1,"");
list.SetItemText(nIndex,2,"");
list.SetItemText(nIndex,3,"");
list.SetItemText(nIndex,4,"");
list.SetItemText(nIndex,5,"");
//找到教该课程的一个老师
flag=0;
connection3.Initialize();
sql.Format("select * from 选修 where 课程号='%s'and 教师号='%s'order by 学号 desc",course,e);
connection3.Connect(sql);
if(connection3.m_pRecordset->adoEOF)
{connection3.Unitialize(); flag=1;}
if(flag==0)
{connection3.m_pRecordset->MoveFirst();
while(!connection3.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection3.m_pRecordset->Fields->GetItem("学号")->Value;
number=TheValue.bstrVal;//得到一个学生的学号
flag=0;
connection4.Initialize();
sql.Format("select * from 学生 where 学号='%s' ",number);
connection4.Connect(sql);
if(connection4.m_pRecordset->adoEOF)
{connection4.Unitialize(); flag=1;}
if(flag==0)
{connection4.m_pRecordset->MoveFirst();
while(!connection4.m_pRecordset->adoEOF)
{ _variant_t TheValue;
TheValue = connection4.m_pRecordset->Fields->GetItem("姓名")->Value;
name=TheValue.bstrVal;
TheValue = connection4.m_pRecordset->Fields->GetItem("性别")->Value;
sex=TheValue.bstrVal;
//得到一个学生的资料
nIndex= list.InsertItem(0,number);
list.SetItemText(nIndex,1,name);
list.SetItemText(nIndex,2,sex);
list.SetItemText(nIndex,3,"");
list.SetItemText(nIndex,4,"" );
connection4.m_pRecordset->MoveNext();
}
connection4.Unitialize();
}
connection3.m_pRecordset->MoveNext();
}
connection3.Unitialize();
}
nIndex= list.InsertItem(0,"学号");
list.SetItemText(nIndex,1,"姓名");
list.SetItemText(nIndex,2,"性别");
list.SetItemText(nIndex,3,"平时成绩");
list.SetItemText(nIndex,4,"考试成绩");
list.SetItemText(nIndex,5,"总评成绩");
nIndex= list.InsertItem(0,"职工号:");
list.SetItemText(nIndex,1,e);
list.SetItemText(nIndex,2,"上课时间:");
list.SetItemText(nIndex,3,f);
list.SetItemText(nIndex,4,"上课地点:");
list.SetItemText(nIndex,5,g);
list.SetItemText(nIndex,6,"考试时间:");
list.SetItemText(nIndex,7,h);
nIndex= list.InsertItem(0,"课程号:");
list.SetItemText(nIndex,1,a);
list.SetItemText(nIndex,2,"课程名称:");
list.SetItemText(nIndex,3,b);
list.SetItemText(nIndex,4,"学分:");
list.SetItemText(nIndex,5,c);
list.SetItemText(nIndex,6,"学时:");
list.SetItemText(nIndex,7,d);
connection2.m_pRecordset->MoveNext();
}
connection2.Unitialize();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -