⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vchomeworkdlg.cpp

📁 本程序界面采用基于对话框技术,并用ADO数据库技术
💻 CPP
📖 第 1 页 / 共 3 页
字号:
			    roader = Ptr->GetCollect("客户姓名");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,1,(char*)(_bstr_t)roader);
                roader = Ptr->GetCollect("客户单位");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,2,(char*)(_bstr_t)roader);
			    Ptr->MoveNext();
			 }
		  Ptr->Close();
		  }
          catch(_com_error& e)
		  {
       	     AfxMessageBox(e.ErrorMessage());
		     m_list.SetRedraw(TRUE);	
		     return;
		  } 
		  m_list.SetRedraw(TRUE);
		  break;
	  }
  case 2:
	  {
		  m_list.DeleteAllItems();
	      m_list.SetRedraw(FALSE);
           _bstr_t SQL("SELECT* FROM swatch");
	      _RecordsetPtr Ptr;
	      int i=0;
	      try
		  {  
		     Ptr.CreateInstance(__uuidof(Recordset));
		     Ptr = m_conn->Execute(SQL,NULL,adCmdText);
		     _variant_t roader;
		     while(!Ptr->adoEOF)
			 {
                roader = Ptr->GetCollect("样品ID");
			    if(roader.vt != VT_NULL)
				  m_list.InsertItem(i,(char*)(_bstr_t)roader);
			    roader = Ptr->GetCollect("客户ID");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,1,(char*)(_bstr_t)roader);
                roader = Ptr->GetCollect("仪器ID");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,2,(char*)(_bstr_t)roader);
			    Ptr->MoveNext();
			 }
		  Ptr->Close();
		  }
          catch(_com_error& e)
		  {
       	     AfxMessageBox(e.ErrorMessage());
		     m_list.SetRedraw(TRUE);	
		     return;
		  } 
		  m_list.SetRedraw(TRUE);
		  break;
	  }
  case 3:
	  {
		  m_list.DeleteAllItems();
	      m_list.SetRedraw(FALSE);
           _bstr_t SQL("SELECT* FROM tool");
	      _RecordsetPtr Ptr;
	      int i=0;
	      try
		  {  
		     Ptr.CreateInstance(__uuidof(Recordset));
		     Ptr = m_conn->Execute(SQL,NULL,adCmdText);
		     _variant_t roader;
		     while(!Ptr->adoEOF)
			 {
                roader = Ptr->GetCollect("仪器ID");
			    if(roader.vt != VT_NULL)
				  m_list.InsertItem(i,(char*)(_bstr_t)roader);
			    roader = Ptr->GetCollect("仪器类型");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,1,(char*)(_bstr_t)roader);
                roader = Ptr->GetCollect("仪器型号");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,2,(char*)(_bstr_t)roader);
			    Ptr->MoveNext();
			 }
		  Ptr->Close();
		  }
          catch(_com_error& e)
		  {
       	     AfxMessageBox(e.ErrorMessage());
		     m_list.SetRedraw(TRUE);	
		     return;
		  } 
		  m_list.SetRedraw(TRUE);
		  break;
	  }
  case 4:
	  {
		  m_list.DeleteAllItems();
	      m_list.SetRedraw(FALSE);
           _bstr_t SQL("SELECT* FROM data");
	      _RecordsetPtr Ptr;
	      int i=0;
	      try
		  {  
		     Ptr.CreateInstance(__uuidof(Recordset));
		     Ptr = m_conn->Execute(SQL,NULL,adCmdText);
		     _variant_t roader;
		     while(!Ptr->adoEOF)
			 {
                roader = Ptr->GetCollect("样品ID");
			    if(roader.vt != VT_NULL)
				  m_list.InsertItem(i,(char*)(_bstr_t)roader);
			    roader = Ptr->GetCollect("自变量X");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,1,(char*)(_bstr_t)roader);
                roader = Ptr->GetCollect("因变量Y");
			    if(roader.vt != VT_NULL)
				  m_list.SetItemText(i,2,(char*)(_bstr_t)roader);
			    Ptr->MoveNext();
			 }
			 Ptr->Close();
		  }
          catch(_com_error& e)
		  {
       	     AfxMessageBox(e.ErrorMessage());
		     m_list.SetRedraw(TRUE);	
		     return;
		  } 
		  m_list.SetRedraw(TRUE);
		  break;
	  }
  }
}

void CVcHomeworkDlg::OnClickList(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	int i = m_list.GetSelectionMark();
//    _variant_t T,T1,T2;	
  if(m_Eflag == 0)
  {
	  m_str1 = m_list.GetItemText(i,0);
      m_str2 = m_list.GetItemText(i,1);
      m_str3 = m_list.GetItemText(i,2); 
      UpdateData(FALSE);
  }
	*pResult = 0;
}



void CVcHomeworkDlg::OnButtonAdd() 
{
	// TODO: Add your control notification handler code here
  m_Eflag = 0;
  switch(flag)
	{
	  case 1:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请输入客户ID、客户姓名和客户单位!");
		         return;
			}
            _variant_t T;
			T = m_str1;
			CString sql_;
			sql_.Format("INSERT INTO client (客户ID,客户姓名,客户单位) VALUES(%ld,'%s','%s')",(long)T,m_str2,m_str3);
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("输入数据成功!");
			Refurbish();
			break;
		}
	case 2:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请输入样品ID、客户ID和仪器ID!");
		         return;
			}
            _variant_t T1,T2,T3;
			T1 = m_str1;
			T2 = m_str2;
			T3 = m_str3;
			CString sql_;
			sql_.Format("INSERT INTO swatch (样品ID,客户ID,仪器ID) VALUES(%ld,%ld,%ld)",(long)T1,(long)T2,(long)T3);
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("输入数据成功!");
			Refurbish();
			break;
		}
	case 3:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请输入仪器ID、仪器类型和仪器型号!");
		         return;
			}
            CString sql_;
			sql_.Format("INSERT INTO tool (仪器ID,仪器类型,仪器型号) values(%ld,'%s','%s')",(long)((_variant_t)m_str1),m_str2,m_str3);
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("输入数据成功!");
			Refurbish();
			break;
		}
	case 4:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请输入样品ID、自变量X和因变量Y!");
		         return;
			}
            CString sql_;
			sql_.Format("INSERT INTO data (样品ID,自变量X,因变量Y) VALUES(%ld,%lf,%lf)",(long)((_variant_t)m_str1),(double)((_variant_t)m_str2),(double)((_variant_t)m_str3));
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("输入数据成功!");
			Refurbish();
			break;
		}
	}	
}

void CVcHomeworkDlg::OnButtonDelete() 
{
	// TODO: Add your control notification handler code here
	m_Eflag = 0;
	switch(flag)
	{
	  case 1:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请选择一条需删除的记录!");
		         return;
			}
            _variant_t T;
			T = m_str1;
			CString sql_;
			sql_.Format("DELETE FROM client WHERE 客户ID=%ld",(long)T);
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("成功删除一条记录!");
			Refurbish();
			break;
		}
	case 2:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请选择一条需删除的记录!");
		         return;
			}
            _variant_t T;
			T = m_str1;
			CString sql_;
			sql_.Format("DELETE FROM swatch WHERE 样品ID=%ld",(long)T);
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("成功删除一条记录!");
			Refurbish();
			break;
		}
	case 3:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请选择一条需删除的记录!");
		         return;
			}
            _variant_t T;
			T = m_str1;
			CString sql_;
			sql_.Format("DELETE FROM tool WHERE 仪器ID=%ld",(long)T);
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("成功删除一条记录!");
			Refurbish();
			break;
		}
	case 4:
		{
			UpdateData(TRUE);
			if (m_str1=="")
			{
		         MessageBox("请选择一条需删除的记录!");
		         return;
			}
            _variant_t T;
			T = m_str1;
			CString sql_;
			sql_.Format("DELETE FROM data WHERE 样品ID=%ld",(long)T);
			_bstr_t sql = sql_;
			try
			{
				m_conn->Execute(sql,NULL,adCmdText);
			}
			catch(_com_error& e)
			{
				AfxMessageBox(e.ErrorMessage());
				return;
			} 
			MessageBox("成功删除一条记录!");
			Refurbish();
			break;
		}
	}
}

void CVcHomeworkDlg::OnRadio5() 
{
	// TODO: Add your control notification handler code here
	m_radio2 = 0;
	m_mark = 1;
	m_info.DeleteColumn(0);
	m_info.InsertColumn(0,"客户ID");
	RECT rect1;
	m_info.GetWindowRect(&rect1);
    int wid1 = rect1.right - rect1.left;
	m_info.SetColumnWidth(0,wid1);
	m_info.SetExtendedStyle(LVS_EX_FULLROWSELECT);
    m_info.DeleteAllItems();
	m_info.SetRedraw(FALSE);
	_bstr_t str1("select * from client");
	_variant_t temp;
	try
	{ 
		int i = 0;
	    m_Ptr.CreateInstance(__uuidof(Recordset));
		m_Ptr = m_conn->Execute(str1,NULL,adCmdText);
		m_Ptr->MoveFirst();
		while(!m_Ptr->adoEOF)
		{
			temp = m_Ptr->GetCollect("客户ID");
			if(temp.vt != VT_NULL)
			   m_info.InsertItem(i,(char*)(_bstr_t)temp);
			m_Ptr->MoveNext();
		}
        m_Ptr->Close();
	}
    catch(_com_error& e)
	{
		 AfxMessageBox(e.ErrorMessage());
	}
	m_info.SetRedraw(TRUE);	
	   
		
}

void CVcHomeworkDlg::OnRadio6() 
{
	// TODO: Add your control notification handler code here
	m_radio2 = 1;
	m_mark = 2;
	m_info.DeleteColumn(0);
	m_info.InsertColumn(0,"仪器ID");
	RECT rect2;
	m_info.GetWindowRect(&rect2);
	int wid2 = rect2.right - rect2.left;
	m_info.SetColumnWidth(0,wid2);
	m_info.SetExtendedStyle(LVS_EX_FULLROWSELECT);
	m_info.DeleteAllItems();
	m_info.SetRedraw(FALSE);
	_bstr_t str2("select * from tool");
	_variant_t temp;
	try
	{
		int i = 0;
		m_Ptr.CreateInstance(__uuidof(Recordset));
		m_Ptr = m_conn->Execute(str2,NULL,adCmdText);
		m_Ptr->MoveFirst();
		while(!m_Ptr->adoEOF)
		{
			temp = m_Ptr->GetCollect("仪器ID");
			if(temp.vt != VT_NULL)
		    m_info.InsertItem(i,(char*)(_bstr_t)temp);
			m_Ptr->MoveNext();
		}
		m_Ptr->Close();
	}
    catch(_com_error& e)
	{
		AfxMessageBox(e.ErrorMessage());
	}
	m_info.SetRedraw(TRUE);
}

void CVcHomeworkDlg::OnRadio7() 
{
	// TODO: Add your control notification handler code here

⌨️ 快捷键说明

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