📄 tv2.cpp
字号:
{str.Format("良好");b++;
m_list.SetItemText(i,6,str);}
if((((prs->m_j2*0.1+prs->m_jump2*0.1+prs->m_run2*0.1+prs->m_ball2*0.1+prs->m_jiqiao*0.166+prs->m_yang*0.167+prs->m_gang*0.167+prs->m_inhouse1)*0.9)+prs->m_inhouse2)>=90&&(((prs->m_j2*0.1+prs->m_jump2*0.1+prs->m_run2*0.1+prs->m_ball2*0.1+prs->m_jiqiao*0.166+prs->m_yang*0.167+prs->m_gang*0.167+prs->m_inhouse1)*0.9)+prs->m_inhouse2)<=100)
{str.Format("优秀");a++;
m_list.SetItemText(i,6,str);}
i++;
prs->MoveNext();}
}
page=i;aa=float(page-d)/float(page);
prs->MoveFirst();
while(!prs->IsEOF()){
if(prs->m_inhouse1!=10){prs->Edit();prs->m_inhouse1=10;prs->Update();}
if(prs->m_inhouse2!=10){prs->Edit();prs->m_inhouse2=10;prs->Update();}
prs->MoveNext();}
delete prs;
}
void CTV2::OnPrepareDC(CDC* pDC, CPrintInfo* pInfo)
{
pDC->SetMapMode(MM_ANISOTROPIC);
CSize size=CSize(800,600);
pDC->SetWindowExt(size);
int a=pDC->GetDeviceCaps(LOGPIXELSX);
int b=pDC->GetDeviceCaps(LOGPIXELSY);
long xx=(long)size.cx*a/96;
long yy=(long)size.cy*b/96;
pDC->SetViewportExt((int)xx,(int)yy);
CListView::OnPrepareDC(pDC, pInfo);
}
BOOL CTV2::OnPreparePrinting(CPrintInfo* pInfo)
{
return DoPreparePrinting(pInfo);
}
void CTV2::OnPrint(CDC* pDC, CPrintInfo* pInfo)
{
COooDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
COooApp*pp=(COooApp*)::AfxGetApp();
CFont font240,font100,font180,*po;
font240.CreatePointFont(240,"楷体_GB2312",pDC);
po=pDC->SelectObject(&font240);
pDC->TextOut((100+9*high1)/3,20,"体育合格标准成绩表");
font180.CreatePointFont(100,"楷体_GB2312",pDC);
po=pDC->SelectObject(&font180);
pDC->TextOut(50,60,pp->class1);
pDC->TextOut((100+9*high1)/2-100,60,pp->date);
pDC->TextOut((100+9*high1)-100,60,pp->teacher);
font100.CreatePointFont(120,"楷体_GB2312",pDC);
po=pDC->SelectObject(&font100);
int page1=0;
if((page/(row-1))<1){page1=1;}
else{if(page%(row-1)==0){page1=page/(row-1);}
else page1=page/(row-1)+1;}
pInfo->SetMaxPage(page1);
CA *prs;
prs=new CA(pDoc->m_pDB);
prs->Open(dbOpenDynaset,prs->GetDefaultSQL(),0);
//绝妙代码,天助我也
CB*m_cb;
m_cb=new CB(pDoc->m_pDB);
m_cb->Open(dbOpenDynaset,m_cb->GetDefaultSQL(),0);
if(!(m_cb->IsBOF()&&m_cb->IsEOF())){
m_cb->MoveFirst();
CString str="";
while(!m_cb->IsEOF()){
str=m_cb->m_column1;
//AfxMessageBox(str);
prs->MoveFirst();
while(!prs->IsEOF()){
if(prs->m_name==str) {
if(m_cb->m_column2==1||m_cb->m_column2==2){prs->Edit();prs->m_inhouse1=prs->m_inhouse1-0.5; prs->Update();}
if(m_cb->m_column2==3){prs->Edit();prs->m_inhouse1=prs->m_inhouse1-1;prs->Update();}
}
prs->MoveNext();}
m_cb->MoveNext();}
}
m_cb->Close();
delete m_cb;
CC *m_cc;CString str="";
m_cc=new CC(pDoc->m_pDB);
m_cc->Open(dbOpenDynaset,m_cc->GetDefaultSQL(),0);
if(pp->gread==3||pp->gread==4||pp->gread==5){
for(int i=0;i<row+1;i++){
pDC->MoveTo(50,80+high2*i);
pDC->LineTo(50+9*high1,80+high2*i);
}
for(i=0;i<10;i++){
pDC->MoveTo(50+high1*i,80);
pDC->LineTo(50+high1*i,80+high2*row);
}
CRect rect(50,80,50+high1,80+high2);
pDC->DrawText("姓名",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*1,80,50+high1*2,80+high2);
pDC->DrawText("体育课成绩",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*2,80,50+high1*3,80+high2);
pDC->DrawText("计入总分60%",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*3,80,50+high1*4,80+high2);
pDC->DrawText("国家体育锻炼标准",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*4,80,50+high1*5,80+high2);
pDC->DrawText("计入总分30%",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*5,80,50+high1*6,80+high2);
pDC->DrawText("缺勤次数",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*6,80,50+high1*7,80+high2);
pDC->DrawText("计入总分10%",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*7,80,50+high1*8,80+high2);
pDC->DrawText("总分",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*8,80,50+high1*9,80+high2);
pDC->DrawText("等级",-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
rect.SetRect(50+high1*9,80,50+high1*10,80+high2);
if(!(m_cc->IsBOF()&&m_cc->IsEOF())){
m_cc->MoveFirst();
while(!m_cc->IsEOF()){
str=m_cc->m_column1;
prs->MoveFirst();
while(!prs->IsEOF()){
if(prs->m_name==str) {
prs->Edit();prs->m_inhouse2=prs->m_inhouse2-(0.5*(m_cc->m_column2+m_cc->m_column3+m_cc->m_column4)); prs->Update();
}
prs->MoveNext();}
m_cc->MoveNext();}
}
if(pInfo->m_nCurPage==1)
{if(prs->GetRecordCount()){
prs->MoveFirst();
for(i=0;i<row-1;i++){
rect.SetRect(50,80+high2*(i+1),50+high1,80+high2*(i+2));
pDC->DrawText(prs->m_name,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
CString str="";
str.Format("%5.2f",prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1);
if(str.GetLength()<=6){
rect.SetRect(50+high1*1,80+high2*(i+1),50+high1*2,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
str.Format("%5.2f",(prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6);
if(str.GetLength()<=6){
rect.SetRect(50+high1*2,80+high2*(i+1),50+high1*3,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
str.Format("%5.2f",(prs->m_down2+prs->m_run2+prs->m_j2+prs->m_jump2+prs->m_ball2)/5);
if(str.GetLength()<=6){
rect.SetRect(50+high1*3,80+high2*(i+1),50+high1*4,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
str.Format("%5.2f",(prs->m_down2+prs->m_run2+prs->m_j2+prs->m_jump2+prs->m_ball2)/5*0.3);
if(str.GetLength()<=6){
rect.SetRect(50+high1*4,80+high2*(i+1),50+high1*5,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
str.Format("%5.2f",(10-prs->m_inhouse2)/0.5);
if(str.GetLength()<=6){
rect.SetRect(50+high1*5,80+high2*(i+1),50+high1*6,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
str.Format("%5.2f",prs->m_inhouse2);
if(str.GetLength()<=6){
rect.SetRect(50+high1*6,80+high2*(i+1),50+high1*7,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
str.Format("%5.2f",prs->m_inhouse2+((prs->m_down2+prs->m_run2+prs->m_j2+prs->m_jump2+prs->m_ball2)/5*0.3)+((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6));
if(str.GetLength()<=6){
rect.SetRect(50+high1*7,80+high2*(i+1),50+high1*8,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
if(((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)<60&&((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)>0)
{str.Format("不及格");}
if(((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)>=60&&((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)<75)
{str.Format("及格");}
if(((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)>=75&&((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)<90)
{str.Format("良好");}
if(((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)>=90&&((prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1)*0.6+(prs->m_j2+prs->m_jump2+prs->m_run2+prs->m_ball2+prs->m_down2)/5*0.3+prs->m_inhouse2)<=100)
{str.Format("优秀");}
if(str.GetLength()<=6){
rect.SetRect(50+high1*8,80+high2*(i+1),50+high1*9,80+high2*(i+2));
pDC->DrawText(str,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);}
if(prs->IsEOF()){CString jj;
jj.Format("优秀人数为%d人,良好人数为%d人,及格人数为%d人,不及格人数为%d人,及格率为%5.2f",a,b,c,d,aa);
pDC->TextOut(50,90+high2*row,jj);
if(prs->GetRecordCount()){
prs->MoveFirst();
while(!prs->IsEOF()){
if(prs->m_inhouse1!=10){prs->Edit();prs->m_inhouse1=10;prs->Update();}
if(prs->m_inhouse2!=10){prs->Edit();prs->m_inhouse2=10;prs->Update();}
prs->MoveNext();}}
return;}else
{prs->MoveNext();}
}}}
if(pInfo->m_nCurPage==2)
{
prs->MoveFirst();
prs->Move(row-1);
for(i=0;i<row-1;i++){
rect.SetRect(50,80+high2*(i+1),50+high1,80+high2*(i+2));
pDC->DrawText(prs->m_name,-1,&rect,DT_VCENTER|DT_CENTER|DT_SINGLELINE);
CString str="";
str.Format("%5.2f",prs->m_text*0.2+prs->m_j2*0.08+prs->m_jump2*0.08+prs->m_run2*0.08+prs->m_ball2*0.08+prs->m_down2*0.08+prs->m_jiqiao*0.1+prs->m_yang*0.1+prs->m_gang*0.1+prs->m_inhouse1);
if(str.GetLength()<=6){
rect.SetRect(50+high1*1,80+high2*(i+1),50+high1*2,80+high2*(i+2));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -