📄 sysdialog.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 + -