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

📄 lishidialog.cpp

📁 一个通讯的主站程序 献给vc 串口通信的网友 看看吧
💻 CPP
字号:
// LishiDialog.cpp : implementation file
//

#include "stdafx.h"
#include "Modem3.h"
#include "Modem3Dlg.h"
#include "LishiDialog.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CLishiDialog dialog


CLishiDialog::CLishiDialog(CWnd* pParent /*=NULL*/)
	: CDialog(CLishiDialog::IDD, pParent)
{
	//{{AFX_DATA_INIT(CLishiDialog)
	//}}AFX_DATA_INIT
//	m_pSet=NULL;
//	m_pDB=NULL;
	pWnd=NULL;
	
}


void CLishiDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CLishiDialog)
	DDX_Control(pDX, IDC_DATETIMEPICKER3, m_DateTime);
	DDX_Control(pDX, IDC_LIST1, m_List1);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CLishiDialog, CDialog)
	//{{AFX_MSG_MAP(CLishiDialog)
	ON_BN_CLICKED(IDC_ALL, OnAll)
	ON_NOTIFY(DTN_DATETIMECHANGE, IDC_DATETIMEPICKER3, OnDatetimechangeDatetimepicker3)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CLishiDialog message handlers

BOOL CLishiDialog::OnInitDialog() 
{   
	int j;
    long m;
	CDialog::OnInitDialog();
	CWnd *ppWnd=CWnd::FindWindow(NULL,"modem3");
	m_pRecordset.CreateInstance("ADODB.Recordset");
	// TODO: Add extra initialization here
	DWORD dwExStyle = LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | /*LVS_EX_SUBITEMIMAGES |*/
	m_List1.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);      LVS_EX_HEADERDRAGDROP | LVS_EX_TRACKSELECT;
    if(pWnd->kong_re==1)
	{
	m=11;
    SetWindowText("空调历史记录");
    m_List1.InsertColumn(0,_T("历史时间"),LVCFMT_IMAGE|LVCFMT_LEFT);
    m_List1.InsertColumn(1,_T("空调水入口"));
	m_List1.InsertColumn(2,_T("空调水出口"));
	m_List1.InsertColumn(3,_T("高发温度"));
	m_List1.InsertColumn(4,_T("高发液位"));
	m_List1.InsertColumn(5,_T("空调水泵"));
	m_List1.InsertColumn(6,_T("冷却泵"));
    m_List1.InsertColumn(7,_T("冷却风机"));
	m_List1.InsertColumn(8,_T("溶液泵"));
	m_List1.InsertColumn(9,_T("真空泵"));
	m_List1.InsertColumn(10,_T("空调燃烧机"));
	m_List1.SetColumnWidth(0 ,140);
    for(j=1;j<11;j++)
	 m_List1.SetColumnWidth(j ,80);
    try
	{ 
    m_pRecordset->Open("SELECT * FROM 空调",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
	}
   catch(_com_error e)
	{
		AfxMessageBox("打开数据库失败!");///显示错误信息
	}
	}
	else if(pWnd->kong_re==2)
	{
	m=4;
    SetWindowText("热水历史记录");
    m_List1.InsertColumn(0,_T("历史时间"),LVCFMT_IMAGE|LVCFMT_LEFT);
    m_List1.InsertColumn(1,_T("热水出口"));
	m_List1.InsertColumn(2,_T("热水泵"));
	m_List1.InsertColumn(3,_T("热水燃烧机"));
     for(j=0;j<4;j++) 
	  m_List1.SetColumnWidth(j ,140);
     try
	 {
		 m_pRecordset->Open("SELECT * FROM 热水器",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
	 }
    catch(_com_error e)
	{
		AfxMessageBox("打开数据库失败!");///显示错误信息
	}

	}
/*****************************************************/
     Show();

        return TRUE; 
}
void CLishiDialog::Show()
{   
	int nItem;
	
   if(pWnd->kong_re==1)
	{
        _variant_t vTime,vKtr,vKtc,vGfwd,vGfyw,vKtsb,vLqb,vLqfj,vRyb,vZkb,vKtrsj;
	    try
		{   
		   
	    	while(!m_pRecordset->adoEOF)
			{  
		    	 vTime = m_pRecordset->GetCollect("历史时间");
			     vKtr = m_pRecordset->GetCollect("空调水入口");
			     vKtc = m_pRecordset->GetCollect("空调水出口");
		         vGfwd = m_pRecordset->GetCollect("高发温度");
	             vGfyw = m_pRecordset->GetCollect("高发液位");
			     vKtsb = m_pRecordset->GetCollect("空调水泵");
			     vLqb = m_pRecordset->GetCollect("冷却泵");
			     vLqfj = m_pRecordset->GetCollect("冷却风机");
	             vRyb = m_pRecordset->GetCollect("溶液泵");
		         vZkb = m_pRecordset->GetCollect("真空泵");
		    	 vKtrsj = m_pRecordset->GetCollect("空调燃烧机");
			     nItem=m_List1.InsertItem(0xffff,(_bstr_t)vTime);
			     m_List1.SetItem(nItem,1,1,(_bstr_t)vKtc,NULL,0,0,0);
			     m_List1.SetItem(nItem,2,1,(_bstr_t)vKtr,NULL,0,0,0);
		         m_List1.SetItem(nItem,3,1,(_bstr_t)vGfwd,NULL,0,0,0);
                 m_List1.SetItem(nItem,4,1,(_bstr_t)vGfyw,NULL,0,0,0);
			     m_List1.SetItem(nItem,5,1,(_bstr_t)vKtsb,NULL,0,0,0);
			     m_List1.SetItem(nItem,6,1,(_bstr_t)vLqb,NULL,0,0,0);
                 m_List1.SetItem(nItem,7,1,(_bstr_t)vLqfj,NULL,0,0,0);
                 m_List1.SetItem(nItem,8,1,(_bstr_t)vRyb,NULL,0,0,0);
			     m_List1.SetItem(nItem,9,1,(_bstr_t)vZkb,NULL,0,0,0);
		     	 m_List1.SetItem(nItem,10,1,(_bstr_t)vKtrsj,NULL,0,0,0);
			     m_pRecordset->MoveNext();
			}
	
		}
	  catch(_com_error e)///捕捉异常
	  {
	  	AfxMessageBox("读取数据库失败!");///显示错误信息
	  }
   } 
else 
{
		
	
      _variant_t vTim,vRsc,vRsb,vRsrsj;
	  try{

  
		while(!m_pRecordset->adoEOF)
		{  
			vTim = m_pRecordset->GetCollect("时间");
			vRsc = m_pRecordset->GetCollect("热水出口");
			vRsb = m_pRecordset->GetCollect("热水泵");
		    vRsrsj = m_pRecordset->GetCollect("热水燃烧机");
	       
			nItem=m_List1.InsertItem(0xffff,(_bstr_t)vTim);
			m_List1.SetItem(nItem,1,1,(_bstr_t)vRsc,NULL,0,0,0);
			m_List1.SetItem(nItem,2,1,(_bstr_t)vRsb,NULL,0,0,0);
			m_List1.SetItem(nItem,3,1,(_bstr_t)vRsrsj,NULL,0,0,0);
           
			m_pRecordset->MoveNext();
		}
	
	}
	catch(_com_error e)///捕捉异常
	{
		AfxMessageBox("读取数据库失败!");///显示错误信息
	}


	}

}

void CLishiDialog::OnAll() 
{
	// TODO: Add your control notification handler code here
    m_List1.DeleteAllItems();
	m_pRecordset->Close();
	if(pWnd->kong_re==1)
	{
     try
	 { 
      m_pRecordset->Open("SELECT * FROM 空调",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
	 }
     catch(_com_error e)
	 {
		AfxMessageBox("打开数据库失败!");///显示错误信息
	 }
	}
	else
	{ 
	  try
	  { 
      m_pRecordset->Open("SELECT * FROM 热水器",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
	  }
     catch(_com_error e)
	 {
		AfxMessageBox("打开数据库失败!");///显示错误信息
	 }
	}

    Show();

}

void CLishiDialog::OnDatetimechangeDatetimepicker3(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	COleDateTime time;
    COleDateTime& timeDest=time;
    m_DateTime.GetTime(timeDest );
/*
	m_pRecordset->Close();
	if(pWnd->kong_re==1)
	{
     try
	 { 
      m_pRecordset->Open("SELECT * FROM 空调 WHERE [高发液位]=1# ",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
	 }
     catch(_com_error e)
	 {
		AfxMessageBox("打开数据库失败!");///显示错误信息

	 }
	}
	else
	{ 
	  try
	  { 
      m_pRecordset->Open("SELECT * FROM 热水器",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
	  }
     catch(_com_error e)
	 {
		AfxMessageBox("打开数据库失败!");///显示错误信息
	 }
	}

    Show();
*/
	
    *pResult = 0;
}

⌨️ 快捷键说明

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