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

📄 sysdialog.cpp

📁 串口应变采集系统
💻 CPP
字号:
// SysDialog.cpp : implementation file
//

#include "stdafx.h"
#include "Atmeasure.h"
#include "SysDialog.h"
#include "SysSet.h"
#include "Adddialog.h"
//#include "AtmeasureView.h"

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

/////////////////////////////////////////////////////////////////////////////
// CSysDialog dialog


CSysDialog::CSysDialog(CWnd* pParent /*=NULL*/)
	: CDialog(CSysDialog::IDD, pParent)
{
	//{{AFX_DATA_INIT(CSysDialog)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CSysDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CSysDialog)
	DDX_Control(pDX, IDC_LIST1, m_CListCtrl);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CSysDialog, CDialog)
	//{{AFX_MSG_MAP(CSysDialog)
	ON_BN_CLICKED(IDC_ADD, OnAdd)
	ON_BN_CLICKED(IDC_DELETE, OnDelete)
	ON_BN_CLICKED(IDC_CHANGE, OnChange)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSysDialog message handlers

int CSysDialog::show()
{
	   CSysSet *ws;
	   ws=new CSysSet;
	   ws->Open();
	   ws->MoveFirst();
	   int i=0;
	   do
	   {
		   CString s;
		   s.Format("%d",ws->m_channel_id);
           m_CListCtrl.InsertItem(i,s,0);
           s.Format("%d",ws->m_point_id);
		   m_CListCtrl.SetItemText(i,1,s);
		   s.Format("%.6f",ws->m_wave);
		   m_CListCtrl.SetItemText(i,2,s);
           s.Format("%.4f",ws->m_T0);
           m_CListCtrl.SetItemText(i,3,s);
           s.Format("%.6f",ws->m_K);
           m_CListCtrl.SetItemText(i,4,s);
           s.Format("%.6f",ws->m_L);
           m_CListCtrl.SetItemText(i,5,s);
           s.Format("%.6f",ws->m_H);
           m_CListCtrl.SetItemText(i,6,s);
           s.Format("%.6f",ws->m_P);
           m_CListCtrl.SetItemText(i,7,s);
           s.Format("%.6f",ws->m_Q);
           m_CListCtrl.SetItemText(i,8,s);
		   s.Format("%d",ws->m_flag);
           m_CListCtrl.SetItemText(i,9,s);
		   s.Format("%d",ws->m_ybchannel);
           m_CListCtrl.SetItemText(i,10,s);
		   s.Format("%d",ws->m_ybpoint);
           m_CListCtrl.SetItemText(i,11,s);


           i++;
           ws->MoveNext();
		
	   }  while(!ws->IsEOF());
        ws->Close();
        return i;


}

BOOL CSysDialog::OnInitDialog()
{
	CDialog::OnInitDialog();
   	m_CListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
	m_CListCtrl.InsertColumn(0, "通道号", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(1, "点号", LVCFMT_LEFT, 50);
	m_CListCtrl.InsertColumn(2, "标定波长", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(3, "α值温度", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(4, "标定温度", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(5, "应变α1", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(6, "应变β1", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(7, "压力α2", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(8, "压力β2", LVCFMT_LEFT, 80);
    m_CListCtrl.InsertColumn(9, "标志位", LVCFMT_LEFT, 70);
	m_CListCtrl.InsertColumn(10, "补偿通道", LVCFMT_LEFT, 80);
	m_CListCtrl.InsertColumn(11,"补偿点",LVCFMT_LEFT,80);
//	m_CListCtrl.InsertColumn(12,"应变补偿通道",LVCFMT_LEFT,80);
//	m_CListCtrl.InsertColumn(13,"应变补偿点",LVCFMT_LEFT,80);
	this->show();
//	((CButton *)GetDlgItem(IDC_RADIO1))->SetCheck(TRUE);
    return true;

}

void CSysDialog::OnAdd() 
{
	// TODO: Add your control notification handler code here
		CAdddialog dlg;
	if(dlg.DoModal()==IDOK)
	{
		int aa,nn;
		aa=m_CListCtrl.GetItemCount();
		for(int i=0;i<aa;i++)
		{
			if(m_CListCtrl.GetItemText(i,0)==dlg.m_channel)
			{
				for(int j=0;i<aa;j++)
				{
					if(m_CListCtrl.GetItemText(i,1)==dlg.m_point)
						MessageBox("重复的通道和点,请重新输入!!!");
						return;
				}
			}
		}
      if (dlg.m_radio1==-1)
	  {
		  MessageBox("请选择传感器类型!!!");
	      return;
	  }

		//////////////////////加通道和点的判断/////////////////////////////
	    nn=m_CListCtrl.InsertItem(m_CListCtrl.GetItemCount(),dlg.m_channel);
		m_CListCtrl.SetItemText(nn,1,dlg.m_point);
		m_CListCtrl.SetItemText(nn,2,dlg.m_wave);
		m_CListCtrl.SetItemText(nn,3,dlg.m_tedit1);
		m_CListCtrl.SetItemText(nn,4,dlg.m_tedit2);
		m_CListCtrl.SetItemText(nn,5,dlg.m_cedit1);
		m_CListCtrl.SetItemText(nn,6,dlg.m_cedit2);
		m_CListCtrl.SetItemText(nn,7,dlg.m_pedit1);
		m_CListCtrl.SetItemText(nn,8,dlg.m_pedit2);
		m_CListCtrl.SetItemText(nn,10,dlg.m_cchannel);
		m_CListCtrl.SetItemText(nn,11,dlg.m_cpoint);
//		m_CListCtrl.SetItemText(nn,11,dlg.m_pchannel);
//		m_CListCtrl.SetItemText(nn,12,dlg.m_ppoint);
		


		if (dlg.m_radio1 == 0)
		{
		  m_CListCtrl.SetItemText(nn,9,"0");
		}
		if(dlg.m_radio1==1)
		{
          m_CListCtrl.SetItemText(nn,9,"1");
		}
		if(dlg.m_radio1==2)
		{
          m_CListCtrl.SetItemText(nn,9,"2");
		}
	}
	
}

void CSysDialog::OnDelete() 
{
	// TODO: Add your control notification handler code here
	POSITION pos = m_CListCtrl.GetFirstSelectedItemPosition();
	m_nIndex = m_CListCtrl.GetNextSelectedItem(pos);  // 得到项目索引
	
	if(m_nIndex==-1)
	{
		MessageBox("请选择一项再删除!","提示",MB_ICONINFORMATION);
		return;
	}
	
    m_CListCtrl.DeleteItem(m_nIndex); 
	
	UINT flag = LVIS_SELECTED|LVIS_FOCUSED;
	m_CListCtrl.SetItemState(m_nIndex-1, flag, flag);
	
}

void CSysDialog::OnChange() 
{
	// TODO: Add your control notification handler code here
		CAdddialog dlg;
	POSITION pos = m_CListCtrl.GetFirstSelectedItemPosition();
	m_nIndex = m_CListCtrl.GetNextSelectedItem(pos);  // 得到项目索引

	if(m_nIndex==-1)
	{
		MessageBox("请选择一项再修改!","提示",MB_ICONINFORMATION);
		return;
	}
	
	
 //   CAdddialog dlg;
//	if (m_CListCtrl.GetItemText(m_nIndex,9)==0)
 //   dlg.m_radio1=0;
//	if(m_CListCtrl.GetItemText(m_nIndex,9)==1)
//		dlg.m_radio1=1;
//	if(m_CListCtrl.GetItemText(m_nIndex,9)==2)
//		dlg.m_radio1=2;
	dlg.m_channel=m_CListCtrl.GetItemText(m_nIndex,0);
	dlg.m_point=m_CListCtrl.GetItemText(m_nIndex,1);
    dlg.m_wave=m_CListCtrl.GetItemText(m_nIndex,2);
	dlg.m_tedit1=m_CListCtrl.GetItemText(m_nIndex,3);
	dlg.m_tedit2=m_CListCtrl.GetItemText(m_nIndex,4);
	dlg.m_cedit1=m_CListCtrl.GetItemText(m_nIndex,5);
	dlg.m_cedit2=m_CListCtrl.GetItemText(m_nIndex,6);
	dlg.m_pedit1=m_CListCtrl.GetItemText(m_nIndex,7);
	dlg.m_pedit2=m_CListCtrl.GetItemText(m_nIndex,8);
//	dlg.m_radio1=m_CListCtrl.GetItemText(m_nIndex,9);
	dlg.m_cchannel=m_CListCtrl.GetItemText(m_nIndex,10);
	dlg.m_cpoint=m_CListCtrl.GetItemText(m_nIndex,11);
  //  dlg.m_pchannel=m_CListCtrl.GetItemText(m_nIndex,11);
//	dlg.m_ppoint=m_CListCtrl.GetItemText(m_nIndex,12);
	
	if(dlg.DoModal()==IDOK)
	{			
		m_CListCtrl.SetItemText(m_nIndex,0,dlg.m_channel);
		m_CListCtrl.SetItemText(m_nIndex,1,dlg.m_point);
		m_CListCtrl.SetItemText(m_nIndex,2,dlg.m_wave);
		m_CListCtrl.SetItemText(m_nIndex,3,dlg.m_tedit1);
		m_CListCtrl.SetItemText(m_nIndex,4,dlg.m_tedit2);
		m_CListCtrl.SetItemText(m_nIndex,5,dlg.m_cedit1);
		m_CListCtrl.SetItemText(m_nIndex,6,dlg.m_cedit2);
		m_CListCtrl.SetItemText(m_nIndex,7,dlg.m_pedit1);
		m_CListCtrl.SetItemText(m_nIndex,8,dlg.m_pedit2);
//		m_CListCtrl.SetItemText(m_nIndex,9,dlg.m_radio1);
		m_CListCtrl.SetItemText(m_nIndex,10,dlg.m_cchannel);
		m_CListCtrl.SetItemText(m_nIndex,11,dlg.m_cpoint);
//		m_CListCtrl.SetItemText(m_nIndex,10,dlg.m_pchannel);
//		m_CListCtrl.SetItemText(m_nIndex,10,dlg.m_ppoint);

	}
	
}

void CSysDialog::OnOK() 
{
	// TODO: Add extra validation here
	
	CDialog::OnOK();
	CAdddialog dlg;
	if( m_database.Open("dbat" ))
    {
	m_database.ExecuteSQL("Delete from 参数初始化");
//	m_database.Close();
	}
	CSysSet *ws;
 	ws=new CSysSet;
	ws->Open();
	int ii;
	CString str;
	ii=m_CListCtrl.GetItemCount();
	for(int i=0;i<ii;i++)
	{
//     m_database.ExecuteSQL("insert into 参数初始化 values(atoi(m_CListCtrl.GetItemText(i,0)));
	ws->AddNew();
//	ws->Edit();
//	test=atoi(m_CListCtrl.GetItemText(i,0));
//	if( m_database.Open("dbat" ))
//	{
		//channel_id=atoi();
        str="insert into 参数初始化 VALUES("+m_CListCtrl.GetItemText(i,0)+","+m_CListCtrl.GetItemText(i,1)+","+m_CListCtrl.GetItemText(i,2)+","+m_CListCtrl.GetItemText(i,3)+","+m_CListCtrl.GetItemText(i,4)+","+m_CListCtrl.GetItemText(i,5)+","+m_CListCtrl.GetItemText(i,6)+","+m_CListCtrl.GetItemText(i,7)+","+m_CListCtrl.GetItemText(i,8)+","+m_CListCtrl.GetItemText(i,9)+","+m_CListCtrl.GetItemText(i,10)+","+m_CListCtrl.GetItemText(i,11)+")";
//		MessageBox(str);
	    m_database.ExecuteSQL(str);
//	}
/*	ws->m_point_id=atoi(m_CListCtrl.GetItemText(i,1));
	ws->m_wave=atoi(m_CListCtrl.GetItemText(i,2));
	ws->m_T0=atoi(m_CListCtrl.GetItemText(i,3));
	ws->m_K=atoi(m_CListCtrl.GetItemText(i,4));
	ws->m_L=atoi(m_CListCtrl.GetItemText(i,5));
	ws->m_H=atoi(m_CListCtrl.GetItemText(i,6));
	ws->m_P=atoi(m_CListCtrl.GetItemText(i,7));
	ws->m_Q=atoi(m_CListCtrl.GetItemText(i,8));
	ws->m_flag=atoi(m_CListCtrl.GetItemText(i,9));
	ws->Update();
	ws->Requery();
	ws->MoveLast();*/

	}
	ws->Close();
	m_database.Close();

}

⌨️ 快捷键说明

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