testdlg.cpp

来自「VC实现word 和ACCESS数据库的连接」· C++ 代码 · 共 718 行 · 第 1/2 页

CPP
718
字号
	{
		
		if(coursename==_T("地籍测量"))
		{
			if(!m_DjclDB.IsOpen())
               m_DjclDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
               
            
            m_DjclDB.MoveFirst();
			while (!m_DjclDB.IsEOF())
			{
				if(m_DjclDB.m_column2==zhishidian)
				 break;
                 m_DjclDB.MoveNext();
			}
             zhishidianID=m_DjclDB.m_column1;
			 m_DjclDB.Close();
		}

		if(coursename==_T("土地利用规划"))
		{
			if(!m_TdlyghDB.IsOpen())
               m_TdlyghDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
               
            m_TdlyghDB.MoveFirst();
		while(!m_TdlyghDB.IsEOF())
			{
				if(m_TdlyghDB.m_column2==zhishidian)
				 break;
                 m_TdlyghDB.MoveNext();
			}
             zhishidianID=m_TdlyghDB.m_column1;
			m_TdlyghDB.Close();
		}

		if(tixing==_T("名词解释题")&&coursename==_T("地籍测量"))
		{
			
             if(!m_DjclnounexplainDB.IsOpen())
                  m_DjclnounexplainDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
                  m_DjclnounexplainDB.MoveFirst();
		         while(!m_DjclnounexplainDB.IsEOF())  
				 {
					 if(zhishidianID==m_DjclnounexplainDB.m_column1)
					  {
			               	m_listtestcontent.InsertString(j,m_DjclnounexplainDB.m_column2);
			                  j++;
							
							
					  }
                      m_DjclnounexplainDB.MoveNext();
		 		  
				  }
                   m_DjclnounexplainDB.Close();
		}
		if(tixing==_T("简答题")&&coursename==_T("地籍测量"))
		{
                  if(!m_DjcljdtDB.IsOpen())
                   m_DjcljdtDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
                   m_DjcljdtDB.MoveFirst();
		      while(!m_DjcljdtDB.IsEOF())  
			  {
				  if(zhishidianID== m_DjcljdtDB.m_column1)
					  {
			               	m_listtestcontent.InsertString(j, m_DjcljdtDB.m_column2);
			                  j++;
					  }
                       m_DjcljdtDB.MoveNext();
		 		 
			  }
                    m_DjcljdtDB.Close();
		}
        if(tixing==_T("简答题")&&coursename==_T("土地利用规划"))
		{
                  if(! m_TdlyghjdtDB.IsOpen())
                   m_TdlyghjdtDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
                   m_TdlyghjdtDB.MoveFirst();
		   while(!m_TdlyghjdtDB.IsEOF())  
		   {
			   if(zhishidianID== m_TdlyghjdtDB.m____ID_)
			   {
			               	m_listtestcontent.InsertString(j, m_TdlyghjdtDB.m_column1);
			                  j++;
				}
                       m_TdlyghjdtDB.MoveNext();
		 		 
		   }
                    m_TdlyghjdtDB.Close();
		}
        if(tixing==_T("名词解释题")&&coursename==_T("土地利用规划"))
		{
                  if(! m_TdlyghmcjsDB.IsOpen())
                   m_TdlyghmcjsDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
                  
                   m_TdlyghmcjsDB.MoveFirst();
		             while(!m_TdlyghmcjsDB.IsEOF())  
					 {
						 if(zhishidianID== m_TdlyghmcjsDB.m____ID_)
						{
			               	m_listtestcontent.InsertString(j, m_TdlyghmcjsDB.m_column1);
			                  j++;
							
						} 
						 
						 m_TdlyghmcjsDB.MoveNext();
					
                       }
                    m_TdlyghmcjsDB.Close();
					 
		}

		if(tixing==_T("论述题")&&coursename==_T("土地利用规划"))
		{
                  if(!m_TdlyghlstDB.IsOpen())
                   m_TdlyghlstDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
                   m_TdlyghlstDB.MoveFirst();
		            while( m_TdlyghlstDB.IsEOF()) 
					{  
						if(zhishidianID== m_TdlyghlstDB.m____ID_)
						{
			               	m_listtestcontent.InsertString(j, m_TdlyghlstDB.m_column1);
			                  j++;
						}
                       m_TdlyghlstDB.MoveNext();
		 		 
					}
                    m_TdlyghlstDB.Close();
		}

	}
}


void CTestDlg::OnButtonSeltest() 
{
	Readtestseltolistctrl(coursename,tixing);
   m_listseledtest.DeleteAllItems();

   // TODO: Add your control notification handler code here
	
}
void CTestDlg::Readtestseltolistctrl(CString coursename,CString tixing)
{
	CString question;
    CString test;
	double k=0.0;
	int c=0;
	int i=m_TestSeleInfoListctrl.GetItemCount();
	int len=m_listseledtest.GetItemCount();
    if(tixing==_T("名词解释题")&&coursename==_T("地籍测量"))
	{
	
        if(!m_DjclnounexplainDB.IsOpen())
        m_DjclnounexplainDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
       
		
        for(int n=0;n<len;n++)
		{ 
			m_DjclnounexplainDB.MoveFirst();
			int index=0;
		    question=m_listseledtest.GetItemText(n,0);
		    while(!m_DjclnounexplainDB.IsEOF())  
			{
				
			     if(question==m_DjclnounexplainDB.m_column2)
				 {
		                 k=m_DjclnounexplainDB.m_column3+k;
						 c=m_DjclnounexplainDB.m_column4+c;
                         m_IndexArraryOfSelMcjs.Add(index);
                         m_DjclnounexplainDB.MoveLast();
				 }
				 else
				 {
                       m_DjclnounexplainDB.MoveNext();
					   index++;
				 }
			}
		}
				
		 m_DjclnounexplainDB.Close();
	}
	if(tixing==_T("简答题")&&coursename==_T("地籍测量"))
	{
	
        if(!m_DjcljdtDB.IsOpen())
       m_DjcljdtDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
       
		
        for(int n=0;n<len;n++)
		{ 
			m_DjcljdtDB.MoveFirst();
			int index=0;
		    question=m_listseledtest.GetItemText(n,0);
		    while(!m_DjcljdtDB.IsEOF())  
			{
				if(question==m_DjcljdtDB.m_column2)
				 {
		                 k=m_DjcljdtDB.m_column3+k;
						 c=m_DjcljdtDB.m_column4+c;
                         m_IndexArraryOfSelJdt.Add(index);
                         m_DjcljdtDB.MoveLast();
				 }
				 else
				 {
                       m_DjcljdtDB.MoveNext();
					   index++;
				 }
			}
		}
				
		 m_DjcljdtDB.Close();
	}
                    k=k/len;
                    c=c/len;
		 m_TestSeleInfoListctrl.InsertItem(i,tixing);
          test.Format("%d",len);
           m_TestSeleInfoListctrl.SetItemText(i,1,test);
          test.Format("%d",c);
          m_TestSeleInfoListctrl.SetItemText(i,2,test);
          test.Format("%f",k);
		  m_TestSeleInfoListctrl.SetItemText(i,3,test);


}

void CTestDlg::OnButtonAdd() 
{
	long mark1;
    double mark2;
	
   // HTREEITEM  m_rgtItem1;
   // HTREEITEM  m_rgtItem2;
	CString question;

	//m_rgtItem2=m_knowledgetree.GetSelectedItem();
//	m_rgtItem1=m_knowledgetree.GetParentItem(m_rgtItem2); 
	//tixing=m_knowledgetree.GetItemText(m_rgtItem2);  

    int j=m_listtestcontent.GetCurSel();
	m_listtestcontent.GetText(j,question);
	if(tixing==_T("名词解释题")&&coursename==_T("地籍测量"))
	{
	
		if(!m_DjclnounexplainDB.IsOpen())
               m_DjclnounexplainDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
               m_DjclnounexplainDB.MoveFirst();
			while(!m_DjclnounexplainDB.IsEOF()) 
			{	
				     if(question==m_DjclnounexplainDB.m_column2)
					 {
					           mark1=m_DjclnounexplainDB.m_column4;
				               mark2=m_DjclnounexplainDB.m_column3;
							 
							        m_DjclnounexplainDB.MoveLast();
					 }
                     else 
					 {
						 m_DjclnounexplainDB.MoveNext();
			           
					 }
			}
             
			 m_DjclnounexplainDB.Close();
	}
	if(tixing==_T("简答题")&&coursename==_T("地籍测量"))
	{
	
		if(!m_DjcljdtDB.IsOpen())
               m_DjcljdtDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
               m_DjcljdtDB.MoveFirst();
			while(!m_DjcljdtDB.IsEOF()) 
			{	
				     if(question==m_DjcljdtDB.m_column2)
					 {
					           mark1=m_DjcljdtDB.m_column4;
				               mark2=m_DjcljdtDB.m_column3;
							 
							        m_DjcljdtDB.MoveLast();
					 }
                     else 
					 {
						m_DjcljdtDB.MoveNext();
			           
					 }
			}
             
			 m_DjcljdtDB.Close();
	}

	int o=m_listseledtest.GetItemCount();
 
	m_listseledtest.InsertItem(o,question);
	CString test;
test.Format("%d",mark1);
    m_listseledtest.SetItemText(o,1,test);
test.Format("%f",mark2);
    m_listseledtest.SetItemText(o,2,test);


// TODO: Add your control notification handler code here
	
}

void CTestDlg::OnButtonDelect() 
{
	
	int i=m_listseledtest.GetSelectionMark();
	 
	m_listseledtest.DeleteItem(i);
	
	// TODO: Add your control notification handler code here

}


void CTestDlg::OnButtonViewtest() 
{
	int paperNum=theApp.m_PaperNum;
	CString PapaerNum;
	PapaerNum.Format("%d",paperNum);
	CString PapaerName="试题";
	CString PaperExt=".rtf";
	CString PaperFileName;
	if(paperNum!=0)
		PaperFileName=coursename+PapaerName+PapaerNum+PaperExt;
	else
		PaperFileName=coursename+PapaerName+PaperExt;
	CFile filelist;
	if(filelist.Open(PaperFileName,CFile::modeCreate | CFile::modeWrite)==FALSE) 
		return;
	theApp.m_PaperNum++;
	int i=m_year1.GetCurSel();
	CString year1;
    CString classname;
	m_year1.GetLBText(i,year1);
    i=this->m_classname.GetCurSel();
    this->m_classname.GetLBText(i,classname);
	CArchive ar(&filelist,CArchive::store);
	
	ar.WriteString("                          武汉大学本科"+year1+"--"+m_year2+"年度"+"\r\n");
    ar.WriteString("                    课程名称: "+coursename+"    班级名称: "+classname+"   姓名:              学号:            \r\n");
	ar.WriteString("------------------------------------------------------------------------------------------------------------------");
//	if(tixing=="名词解释题"&&coursename=="地籍测量")
//	{
//          if(!m_DjclnounexplainDB.IsOpen())
 ////              m_DjclnounexplainDB.Open(AFX_DAO_USE_DEFAULT_TYPE,NULL,0);
  ////             m_DjclnounexplainDB.MoveFirst();
//			  int n=m_IndexArraryOfSelMcjs.GetSize();
//			  for(int i=0;i<n;i++)
//			  {
			
	ar.Close();
	filelist.Close();
	
 	theApp._OpenPaper(PaperFileName);
	// TODO: Add your control notification handler code here
	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?