📄 xcsz.cpp
字号:
// xcsz.cpp : implementation file
//
#include "stdafx.h"
#include "resource.h"
#include "xcsz.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// Cxcsz dialog
Cxcsz::Cxcsz(CWnd* pParent /*=NULL*/)
: CDialog(Cxcsz::IDD, pParent)
{
//{{AFX_DATA_INIT(Cxcsz)
m_2c = _T("13");
m_ac = _T("7");
m_dc = _T("10");
m_fc = _T("9");
m_ic = _T("7");
m_ndc = _T("15");
m_glc = _T("8");
m_czjchs = 3;
m_jlchs = 2;
m_spjchs = 2;
m_dj = _T("一级");
//}}AFX_DATA_INIT
}
void Cxcsz::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(Cxcsz)
DDX_Control(pDX, IDC_DJ_SET, m_DJ_ctr);
DDX_Text(pDX, IDC_2C, m_2c);
DDX_Text(pDX, IDC_AC, m_ac);
DDX_Text(pDX, IDC_DC, m_dc);
DDX_Text(pDX, IDC_FC, m_fc);
DDX_Text(pDX, IDC_IC, m_ic);
DDX_Text(pDX, IDC_NDC, m_ndc);
DDX_Text(pDX, IDC_GLC, m_glc);
DDX_Text(pDX, IDC_CZJ_CHS, m_czjchs);
DDV_MinMaxUInt(pDX, m_czjchs, 0, 20);
DDX_Text(pDX, IDC_JL_CHS, m_jlchs);
DDV_MinMaxUInt(pDX, m_jlchs, 0, 20);
DDX_Text(pDX, IDC_SPJ_CHS, m_spjchs);
DDV_MinMaxUInt(pDX, m_spjchs, 0, 20);
DDX_CBString(pDX, IDC_DJ_SET, m_dj);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(Cxcsz, CDialog)
//{{AFX_MSG_MAP(Cxcsz)
ON_CBN_SELCHANGE(IDC_DJ_SET, OnSelchangeDjSet)
ON_CBN_KILLFOCUS(IDC_DJ_SET, OnKillfocus)
ON_CBN_SETFOCUS(IDC_DJ_SET, OnSetfocus)
ON_EN_KILLFOCUS(IDC_2C, OnKillfocus)
ON_EN_SETFOCUS(IDC_2C, OnSetfocus)
ON_EN_KILLFOCUS(IDC_AC, OnKillfocus)
ON_EN_SETFOCUS(IDC_AC, OnSetfocus)
ON_EN_KILLFOCUS(IDC_DC, OnKillfocus)
ON_EN_SETFOCUS(IDC_DC, OnSetfocus)
ON_EN_KILLFOCUS(IDC_FC, OnKillfocus)
ON_EN_SETFOCUS(IDC_GLC, OnSetfocus)
ON_EN_KILLFOCUS(IDC_IC, OnKillfocus)
ON_EN_SETFOCUS(IDC_IC, OnSetfocus)
ON_EN_KILLFOCUS(IDC_JL_CHS, OnKillfocus)
ON_EN_SETFOCUS(IDC_JL_CHS, OnSetfocus)
ON_EN_KILLFOCUS(IDC_NDC, OnKillfocus)
ON_EN_SETFOCUS(IDC_NDC, OnSetfocus)
ON_EN_KILLFOCUS(IDC_SPJ_CHS, OnKillfocus)
ON_EN_SETFOCUS(IDC_SPJ_CHS, OnSetfocus)
ON_EN_KILLFOCUS(IDC_CZJ_CHS, OnKillfocus)
ON_EN_SETFOCUS(IDC_CZJ_CHS, OnSetfocus)
ON_EN_KILLFOCUS(IDC_GLC, OnKillfocus)
ON_EN_SETFOCUS(IDC_FC, OnSetfocus)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// Cxcsz message handlers
void Cxcsz::OnOK()
{
// TODO: Add extra validation here
UpdateData(true);
CString str;
theApp.cldj=m_dj;
theApp.p_2c=wchartofloat(m_2c);
theApp.p_c=wchartofloat(m_glc);
theApp.p_fc=wchartofloat(m_fc);
theApp.dc=wchartofloat(m_dc);
theApp.n_dc=wchartofloat(m_ndc);
theApp.I_c=wchartofloat(m_ic);
theApp.A_c=wchartofloat(m_ac);
theApp.spj_chs_kz=m_spjchs;
theApp.czj_chs_kz=m_czjchs;
theApp.dis_chs_kz=m_jlchs;
theApp.DataBase.m_values.RemoveAll();
theApp.DataBase.m_values.Add(m_dj);
theApp.DataBase.m_values.Add(m_2c);
theApp.DataBase.m_values.Add(m_glc);
theApp.DataBase.m_values.Add(m_fc);
theApp.DataBase.m_values.Add(m_dc);
theApp.DataBase.m_values.Add(m_ndc);
theApp.DataBase.m_values.Add(m_ac);
theApp.DataBase.m_values.Add(m_ic);
str.Format(_T("%d"),m_spjchs);
theApp.DataBase.m_values.Add(str);
str.Format(_T("%d"),m_czjchs);
theApp.DataBase.m_values.Add(str);
str.Format(_T("%d"),m_jlchs);
theApp.DataBase.m_values.Add(str);
if(!theApp.DataBase.AddNewRecord())
{
AfxMessageBox(_T("限差不能成功设置"));
theApp.DataBase.CloseTable();
return;
}
theApp.DataBase.CloseTable();
CDialog::OnOK();
}
int Cxcsz::wchartofloat(CString point)
{
char buf [250];
buf[0]='\0';
int i,len=wcslen(point);
for(i=0;i<len;i++)
{
switch(point.GetAt(i))
{
case '-':
buf[i]='-';
buf[i+1]='\0';
break;
case '.':
buf[i]='.';
buf[i+1]='\0';
break;
case '0':
buf[i]='0';
buf[i+1]='\0';
break;
case '1':
buf[i]='1';
buf[i+1]='\0';
break;
case '2':
buf[i]='2';
buf[i+1]='\0';
break;
case '3':
buf[i]='3';
buf[i+1]='\0';
break;
case '4':
buf[i]='4';
buf[i+1]='\0';
break;
case '5':
buf[i]='5';
buf[i+1]='\0';
break;
case '6':
buf[i]='6';
buf[i+1]='\0';
break;
case '7':
buf[i]='7';
buf[i+1]='\0';
break;
case '8':
buf[i]='8';
buf[i+1]='\0';
break;
case '9':
buf[i]='9';
buf[i+1]='\0';
break;
}
}
return atoi(buf);
}
void Cxcsz::OnSelchangeDjSet()
{
// TODO: Add your control notification handler code here
UpdateData(true);
int n=m_DJ_ctr.GetCurSel();
switch(n)
{
case 2:
m_dj=_T("一级");
m_2c=_T("13");//2c限差
m_glc=_T("8");//归零差
m_fc=_T("9");//方向差
m_ac=_T("7");//垂直角差
m_dc=_T("10");//距离差
m_ic=_T("7");//指标差
m_ndc=_T("15");//测回间距离差
m_spjchs=2;//水平角测绘数
m_czjchs=3;//垂直角测绘数
m_jlchs=2;//距离测绘数
break;
case 3:
m_dj=_T("二级");
m_2c=_T("13");//2c限差
m_glc=_T("8");//归零差
m_fc=_T("9");//方向差
m_ac=_T("7");//垂直角差
m_dc=_T("10");//距离差
m_ic=_T("7");//指标差
m_ndc=_T("15");//测回间距离差
m_spjchs=1;//水平角测绘数
m_czjchs=3;//垂直角测绘数
m_jlchs=2;//距离测绘数
break;
case 0:
m_dj=_T("三等");
m_2c=_T("13");//2c限差
m_glc=_T("8");//归零差
m_fc=_T("9");//方向差
m_ac=_T("15");//垂直角差
m_dc=_T("10");//距离差
m_ic=_T("15");//指标差
m_ndc=_T("15");//测回间距离差
m_spjchs=12;//水平角测绘数
m_czjchs=4;//垂直角测绘数
m_jlchs=4;//距离测绘数
break;
case 1:
m_dj=_T("四等");
m_2c=_T("13");//2c限差
m_glc=_T("8");//归零差
m_fc=_T("9");//方向差
m_ac=_T("15");//垂直角差
m_dc=_T("10");//距离差
m_ic=_T("15");//指标差
m_ndc=_T("15");//测回间距离差
m_spjchs=6;//水平角测绘数
m_czjchs=2;//垂直角测绘数
m_jlchs=2;//距离测绘数
break;
case 4:
m_dj=_T("图Ⅰ");
m_2c=_T("13");//2c限差
m_glc=_T("8");//归零差
m_fc=_T("9");//方向差
m_ac=_T("15");//垂直角差
m_dc=_T("10");//距离差
m_ic=_T("15");//指标差
m_ndc=_T("15");//测回间距离差
m_spjchs=1;//水平角测绘数
m_czjchs=2;//垂直角测绘数
m_jlchs=1;//距离测绘数
break;
case 5:
m_dj=_T("图Ⅱ");
m_2c=_T("13");//2c限差
m_glc=_T("8");//归零差
m_fc=_T("9");//方向差
m_ac=_T("15");//垂直角差
m_dc=_T("10");//距离差
m_ic=_T("15");//指标差
m_ndc=_T("15");//测回间距离差
m_spjchs=1;//水平角测绘数
m_czjchs=1;//垂直角测绘数
m_jlchs=1;//距离测绘数
break;
}
UpdateData(false);
}
void Cxcsz::OnKillfocus()
{
// TODO: Add your control notification handler code here
SHSipPreference(AfxGetMainWnd()->m_hWnd,SIP_DOWN);
}
void Cxcsz::OnSetfocus()
{
// TODO: Add your control notification handler code here
SHSipPreference(AfxGetMainWnd()->m_hWnd,SIP_UP);
}
BOOL Cxcsz::OnInitDialog()
{
CDialog::OnInitDialog();
if(theApp.cldj.GetLength()>0)
{
// AfxMessageBox(_T("111"));
m_dj=theApp.cldj;
m_2c.Format(_T("%d"),theApp.p_2c);
m_glc.Format(_T("%d"),theApp.p_c);
m_fc.Format(_T("%d"),theApp.p_fc);
m_dc.Format(_T("%d"),theApp.dc);
m_ndc.Format(_T("%d"),theApp.n_dc);
m_ic.Format(_T("%d"),theApp.I_c);
m_ac.Format(_T("%d"),theApp.A_c);
m_spjchs=theApp.spj_chs_kz;
m_czjchs=theApp.czj_chs_kz;
m_jlchs=theApp.dis_chs_kz;
UpdateData(false);
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -