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

📄 exposalsysdatadlg.cpp

📁 这是一个特殊的非球面透镜设计程序,可以进行VC++编程!
💻 CPP
字号:
// ExposalSysDataDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Lens_Design.h"
#include "ExposalSysDataDlg.h"
#include "ExposalSysDataRecSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// CExposalSysDataDlg dialog


CExposalSysDataDlg::CExposalSysDataDlg(CWnd* pParent /*=NULL*/,CExposalSysDataRecSet *pSet)
	: CDialog(CExposalSysDataDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CExposalSysDataDlg)
	m_AD = 0.0;
	m_AL = 0.0;
	m_AZ1 = 0.0;
	m_AZ2 = 0.0;
	m_AZ3 = 0.0;
	m_Cam_Obli = 0.0;
	m_Correct = _T("");
	m_Exp = _T("");
	m_Glass = _T("");
	m_Gun = _T("");
	m_Input_Date = COleDateTime::GetCurrentTime();
	m_Lamp = _T("");
	m_Lens1 = _T("");
	m_Lens2 = _T("");
	m_Lens3 = _T("");
	m_LO = 0.0;
	m_PPC = _T("");
	m_S_G = 0.0;
	m_Screen = _T("");
	m_Shadow = _T("");
	m_SL1_R_B = 0.0;
	m_SL2_R_B = 0.0;
	m_VL1_G = 0.0;
	m_VL2_G = 0.0;
	m_Z1 = 0.0;
	m_Z2 = 0.0;
	m_Z3 = 0.0;
	m_S_R_B = 0.0;
	m_Sz = 0.0;
	m_EditQ = 0.0;
	m_Slength = 14.0;
	m_DeltP = 21.6;
	m_YPB1 = 2.50;
	m_YPB2 = 2.96;
	//}}AFX_DATA_INIT
    m_pSet=pSet;
}


void CExposalSysDataDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CExposalSysDataDlg)
	DDX_Text(pDX, IDC_EDITAD, m_AD);
	DDX_Text(pDX, IDC_EDITAL, m_AL);
	DDX_Text(pDX, IDC_EDITAZ1, m_AZ1);
	DDX_Text(pDX, IDC_EDITAZ2, m_AZ2);
	DDX_Text(pDX, IDC_EDITAZ3, m_AZ3);
	DDX_Text(pDX, IDC_EDITCAM_OBLI, m_Cam_Obli);
	DDX_Text(pDX, IDC_EDITCORRECT, m_Correct);
	DDX_Text(pDX, IDC_EDITEXP, m_Exp);
	DDX_Text(pDX, IDC_EDITGLASS, m_Glass);
	DDX_Text(pDX, IDC_EDITGUN, m_Gun);
	DDX_Text(pDX, IDC_EDITINPUT_DATE, m_Input_Date);
	DDX_Text(pDX, IDC_EDITLAMP, m_Lamp);
	DDX_Text(pDX, IDC_EDITLENS1, m_Lens1);
	DDX_Text(pDX, IDC_EDITLENS2, m_Lens2);
	DDX_Text(pDX, IDC_EDITLENS3, m_Lens3);
	DDX_Text(pDX, IDC_EDITLO, m_LO);
	DDX_Text(pDX, IDC_EDITPPC, m_PPC);
	DDX_Text(pDX, IDC_EDITS_G, m_S_G);
	DDX_Text(pDX, IDC_EDITSCREEN, m_Screen);
	DDX_Text(pDX, IDC_EDITSHADOW, m_Shadow);
	DDX_Text(pDX, IDC_EDITSL1_R_B, m_SL1_R_B);
	DDX_Text(pDX, IDC_EDITSL2_R_B, m_SL2_R_B);
	DDX_Text(pDX, IDC_EDITVL1_G, m_VL1_G);
	DDX_Text(pDX, IDC_EDITVL2_G, m_VL2_G);
	DDX_Text(pDX, IDC_EDITZ1, m_Z1);
	DDX_Text(pDX, IDC_EDITZ2, m_Z2);
	DDX_Text(pDX, IDC_EDITZ3, m_Z3);
	DDX_Text(pDX, IDC_EDITS_R_B, m_S_R_B);
	DDX_Text(pDX, IDC_EDITSz, m_Sz);
	DDX_Text(pDX, IDC_EDITQ, m_EditQ);
	DDV_MinMaxDouble(pDX, m_EditQ, 0., 30.);
	DDX_Text(pDX, IDC_LAMP_LENGTH, m_Slength);
	DDV_MinMaxDouble(pDX, m_Slength, 0., 20.);
	DDX_Text(pDX, IDC_DeltP, m_DeltP);
	DDX_Text(pDX, IDC_YPB1, m_YPB1);
	DDX_Text(pDX, IDC_YPB2, m_YPB2);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CExposalSysDataDlg, CDialog)
	//{{AFX_MSG_MAP(CExposalSysDataDlg)
	ON_BN_CLICKED(IDC_BUTTONADD, OnButtonadd)
	ON_BN_CLICKED(IDC_BUTTONDEL, OnButtondel)
	ON_BN_CLICKED(IDC_BUTTONFIR, OnButtonfir)
	ON_BN_CLICKED(IDC_BUTTONLST, OnButtonlst)
	ON_BN_CLICKED(IDC_BUTTONMDF, OnButtonmdf)
	ON_BN_CLICKED(IDC_BUTTONNXT, OnButtonnxt)
	ON_BN_CLICKED(IDC_BUTTONPRI, OnButtonpri)
	ON_BN_CLICKED(IDC_BUTTONSAVE, OnButtonsave)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CExposalSysDataDlg message handlers

void CExposalSysDataDlg::OnButtonadd() 
{
	// TODO: Add your control notification handler code here
	int ret=AfxMessageBox("Are you sure to add data",MB_YESNO   );
	if(ret!=IDYES)return;
	m_AD = 0.0;
	m_AZ2 = 0.0;
	m_AL = 0.0;
	m_AZ1 = 0.0;
	m_AZ3 = 0.0;
	m_Cam_Obli = 0.0;
	m_Input_Date = COleDateTime::GetCurrentTime();
	m_LO = 0.0;
	m_S_G = 0.0;
	m_S_R_B = 0.0;
	m_Sz=0.0;
	m_SL1_R_B = 0.0;
	m_SL2_R_B = 0.0;
	m_VL1_G = 0.0;
	m_VL2_G = 0.0;
	m_Z1 = 0.0;
	m_Z2 = 0.0;
	m_Z3 = 0.0;
	m_Correct = _T("");
	m_Exp = _T("");
	m_Glass = _T("");
	m_Gun = _T("");
	m_Lamp = _T("");
	m_Lens1 = _T("");
	m_Lens2 = _T("");
	m_Lens3 = _T("");
	m_PPC = _T("");
	m_Screen = _T("");
	m_Shadow = _T("");
	m_EditQ = 0.0;
	UpdateData(false);
	EnableSaveButton();
	m_pSet->AddNew();
}

void CExposalSysDataDlg::OnButtondel() 
{
	// TODO: Add your control notification handler code here
	int ret=AfxMessageBox("Are you sure to forever delete data",MB_YESNO   );
	if(ret!=IDYES)return;
	m_pSet->Delete();
	OnButtonfir();		
}

void CExposalSysDataDlg::OnButtonfir() 
{
	// TODO: Add your control notification handler code here
	if(!m_pSet->IsBOF())m_pSet->MoveFirst();
	else return;
	m_AD=m_pSet->m_AD;
	m_AL=m_pSet->m_AL;
	m_AZ1=m_pSet->m_AZ1;
	m_AZ2=m_pSet->m_AZ2;
	m_AZ3=m_pSet->m_AZ3;
	m_Cam_Obli=m_pSet->m_Cam_Obliquity;
	m_Correct=m_pSet->m_Correct_Filter;
	m_Exp=m_pSet->m_Exposal_System;
	m_Glass=m_pSet->m_Glass_Mask;
	m_Gun=m_pSet->m_Electronic_Gun_Model;
	m_Input_Date=m_pSet->m_Input_Date;
	m_Lamp=m_pSet->m_Lamp_House;
	m_Lens1=m_pSet->m_Lens1_Model;
	m_Lens2=m_pSet->m_Lens2_Model;
	m_Lens3=m_pSet->m_Lens3_Model;
	m_LO=m_pSet->m_LO;
	m_PPC=m_pSet->m_PPC_Cam;
	m_S_G=m_pSet->m_S_G;
	m_S_R_B=m_pSet->m_S_R_B;
	m_Sz=m_pSet->m_Sz;
	m_Screen=m_pSet->m_Screen_Model;
	m_Shadow=m_pSet->m_Shadow_Model;
	m_SL1_R_B=m_pSet->m_SL1_R_B;
	m_SL2_R_B=m_pSet->m_SL2_R_B;
	m_VL1_G=m_pSet->m_VL1_G;
	m_VL2_G=m_pSet->m_VL2_G;
	m_Z1=m_pSet->m_Z1;
	m_Z2=m_pSet->m_Z2;
	m_Z3=m_pSet->m_Z3;
	m_EditQ=m_pSet->m_EditQ;
	UpdateData(FALSE);

}

void CExposalSysDataDlg::OnButtonlst() 
{
	// TODO: Add your control notification handler code here
	if(!m_pSet->IsEOF())m_pSet->MoveLast();
	else return;
	m_AD=m_pSet->m_AD;
	m_AL=m_pSet->m_AL;
	m_AZ1=m_pSet->m_AZ1;
	m_AZ2=m_pSet->m_AZ2;
	m_AZ3=m_pSet->m_AZ3;
	m_Cam_Obli=m_pSet->m_Cam_Obliquity;
	m_Correct=m_pSet->m_Correct_Filter;
	m_Exp=m_pSet->m_Exposal_System;
	m_Glass=m_pSet->m_Glass_Mask;
	m_Gun=m_pSet->m_Electronic_Gun_Model;
	m_Input_Date=m_pSet->m_Input_Date;
	m_Lamp=m_pSet->m_Lamp_House;
	m_Lens1=m_pSet->m_Lens1_Model;
	m_Lens2=m_pSet->m_Lens2_Model;
	m_Lens3=m_pSet->m_Lens3_Model;
	m_LO=m_pSet->m_LO;
	m_PPC=m_pSet->m_PPC_Cam;
	m_S_G=m_pSet->m_S_G;
	m_S_R_B=m_pSet->m_S_R_B;
	m_Sz=m_pSet->m_Sz;
	m_Screen=m_pSet->m_Screen_Model;
	m_Shadow=m_pSet->m_Shadow_Model;
	m_SL1_R_B=m_pSet->m_SL1_R_B;
	m_SL2_R_B=m_pSet->m_SL2_R_B;
	m_VL1_G=m_pSet->m_VL1_G;
	m_VL2_G=m_pSet->m_VL2_G;
	m_Z1=m_pSet->m_Z1;
	m_Z2=m_pSet->m_Z2;
	m_Z3=m_pSet->m_Z3;
	m_EditQ=m_pSet->m_EditQ;
	UpdateData(FALSE);	

}

void CExposalSysDataDlg::OnButtonmdf() 
{
	// TODO: Add your control notification handler code here
	int ret=AfxMessageBox("Are you sure to modify data",MB_YESNO   );
	if(ret!=IDYES)return;
	EnableSaveButton();
	m_pSet->Edit();
}

void CExposalSysDataDlg::OnButtonnxt() 
{
	// TODO: Add your control notification handler code here
	if(!m_pSet->IsEOF())
		m_pSet->MoveNext();
	if(m_pSet->IsEOF())
		m_pSet->MoveLast();
	m_AD=m_pSet->m_AD;
	m_AL=m_pSet->m_AL;
	m_AZ1=m_pSet->m_AZ1;
	m_AZ2=m_pSet->m_AZ2;
	m_AZ3=m_pSet->m_AZ3;
	m_Cam_Obli=m_pSet->m_Cam_Obliquity;
	m_Correct=m_pSet->m_Correct_Filter;
	m_Exp=m_pSet->m_Exposal_System;
	m_Glass=m_pSet->m_Glass_Mask;
	m_Gun=m_pSet->m_Electronic_Gun_Model;
	m_Input_Date=m_pSet->m_Input_Date;
	m_Lamp=m_pSet->m_Lamp_House;
	m_Lens1=m_pSet->m_Lens1_Model;
	m_Lens2=m_pSet->m_Lens2_Model;
	m_Lens3=m_pSet->m_Lens3_Model;
	m_LO=m_pSet->m_LO;
	m_PPC=m_pSet->m_PPC_Cam;
	m_S_G=m_pSet->m_S_G;
	m_S_R_B=m_pSet->m_S_R_B;
	m_Sz=m_pSet->m_Sz;
	m_Screen=m_pSet->m_Screen_Model;
	m_Shadow=m_pSet->m_Shadow_Model;
	m_SL1_R_B=m_pSet->m_SL1_R_B;
	m_SL2_R_B=m_pSet->m_SL2_R_B;
	m_VL1_G=m_pSet->m_VL1_G;
	m_VL2_G=m_pSet->m_VL2_G;
	m_Z1=m_pSet->m_Z1;
	m_Z2=m_pSet->m_Z2;
	m_Z3=m_pSet->m_Z3;
	m_EditQ=m_pSet->m_EditQ;
	UpdateData(FALSE);
	
}

void CExposalSysDataDlg::OnButtonpri() 
{
	// TODO: Add your control notification handler code here
	if(!m_pSet->IsBOF())
		m_pSet->MovePrev();
	else
		m_pSet->MoveFirst();
	if (m_pSet->IsBOF())
       m_pSet->MoveFirst();
	m_AD=m_pSet->m_AD;
	m_AL=m_pSet->m_AL;
	m_AZ1=m_pSet->m_AZ1;
	m_AZ2=m_pSet->m_AZ2;
	m_AZ3=m_pSet->m_AZ3;
	m_Cam_Obli=m_pSet->m_Cam_Obliquity;
	m_Correct=m_pSet->m_Correct_Filter;
	m_Exp=m_pSet->m_Exposal_System;
	m_Glass=m_pSet->m_Glass_Mask;
	m_Gun=m_pSet->m_Electronic_Gun_Model;
	m_Input_Date=m_pSet->m_Input_Date;
	m_Lamp=m_pSet->m_Lamp_House;
	m_Lens1=m_pSet->m_Lens1_Model;
	m_Lens2=m_pSet->m_Lens2_Model;
	m_Lens3=m_pSet->m_Lens3_Model;
	m_LO=m_pSet->m_LO;
	m_PPC=m_pSet->m_PPC_Cam;
	m_S_G=m_pSet->m_S_G;
	m_S_R_B=m_pSet->m_S_R_B;
	m_Sz=m_pSet->m_Sz;
	m_Screen=m_pSet->m_Screen_Model;
	m_Shadow=m_pSet->m_Shadow_Model;
	m_SL1_R_B=m_pSet->m_SL1_R_B;
	m_SL2_R_B=m_pSet->m_SL2_R_B;
	m_VL1_G=m_pSet->m_VL1_G;
	m_VL2_G=m_pSet->m_VL2_G;
	m_Z1=m_pSet->m_Z1;
	m_Z2=m_pSet->m_Z2;
	m_Z3=m_pSet->m_Z3;
	m_EditQ=m_pSet->m_EditQ;
	UpdateData(FALSE);
	
}

void CExposalSysDataDlg::OnButtonsave() 
{
	// TODO: Add your control notification handler code here
	int ret=AfxMessageBox("Are you sure to Update data",MB_YESNO   );
	if(ret!=IDYES)
	{
		OnButtonpri();
		return;
	}
	UpdateData();
	if(m_Exp==_T(""))
	{
		AfxMessageBox("Please Keep exp mot empty");
		GetDlgItem(IDC_EDITEXP)->SetFocus();
		return;
	}
	m_pSet->m_AD=m_AD;
	m_pSet->m_AL=m_AL;
	m_pSet->m_AZ1=m_AZ1;
	m_pSet->m_AZ2=m_AZ2;
	m_pSet->m_AZ3=m_AZ3;
	m_pSet->m_Cam_Obliquity=m_Cam_Obli;
	m_pSet->m_Correct_Filter=m_Correct;
	m_pSet->m_Exposal_System=m_Exp;
	m_pSet->m_Glass_Mask=m_Glass;
	m_pSet->m_Electronic_Gun_Model=m_Gun;
	m_pSet->m_Input_Date=m_Input_Date;
	m_pSet->m_Lamp_House=m_Lamp;
	m_pSet->m_Lens1_Model=m_Lens1;
	m_pSet->m_Lens2_Model=m_Lens2;
	m_pSet->m_Lens3_Model=m_Lens3;
	m_pSet->m_LO=m_LO;
	m_pSet->m_PPC_Cam=m_PPC;
	m_pSet->m_S_G=m_S_G;
	m_pSet->m_S_R_B=m_S_R_B;
	m_pSet->m_Sz=m_Sz;
	m_pSet->m_Screen_Model=m_Screen;
	m_pSet->m_Shadow_Model=m_Shadow;
	m_pSet->m_SL1_R_B=m_SL1_R_B;
	m_pSet->m_SL2_R_B=m_SL2_R_B;
	m_pSet->m_VL1_G=m_VL1_G;
	m_pSet->m_VL2_G=m_VL2_G;
	m_pSet->m_Z1=m_Z1;
	m_pSet->m_Z2=m_Z2;
	m_pSet->m_Z3=m_Z3;
	m_pSet->m_EditQ=m_EditQ;
	m_pSet->Update();
	EnableButtonAll(TRUE);
	
}
void CExposalSysDataDlg::EnableButtonAll(BOOL bEnable)
{
	GetDlgItem(IDC_BUTTONPRI)->EnableWindow(bEnable);
	GetDlgItem(IDC_BUTTONFIR)->EnableWindow(bEnable);
	GetDlgItem(IDC_BUTTONLST)->EnableWindow(bEnable);
	GetDlgItem(IDC_BUTTONNXT)->EnableWindow(bEnable);
	GetDlgItem(IDC_BUTTONMDF)->EnableWindow(bEnable);
	GetDlgItem(IDC_BUTTONDEL)->EnableWindow(bEnable);
	GetDlgItem(IDC_BUTTONSAVE)->EnableWindow(bEnable);
	GetDlgItem(IDC_BUTTONADD)->EnableWindow(bEnable);
	GetDlgItem(IDCANCEL)->EnableWindow(bEnable);

}

void CExposalSysDataDlg::EnableSaveButton()
{
	GetDlgItem(IDC_BUTTONPRI)->EnableWindow(false);
	GetDlgItem(IDC_BUTTONFIR)->EnableWindow(false);
	GetDlgItem(IDC_BUTTONLST)->EnableWindow(false);
	GetDlgItem(IDC_BUTTONNXT)->EnableWindow(false);
	GetDlgItem(IDC_BUTTONMDF)->EnableWindow(false);
	GetDlgItem(IDC_BUTTONDEL)->EnableWindow(false);
	GetDlgItem(IDC_BUTTONSAVE)->EnableWindow(TRUE);
	GetDlgItem(IDC_BUTTONADD)->EnableWindow(false);
	GetDlgItem(IDCANCEL)->EnableWindow(false);
}



BOOL CExposalSysDataDlg::PreTranslateMessage(MSG* pMsg) 
{
	// TODO: Add your specialized code here and/or call the base class
	if(pMsg->wParam==VK_RETURN || pMsg->wParam==VK_SPACE)
		return TRUE;	
	return CDialog::PreTranslateMessage(pMsg);
}

BOOL CExposalSysDataDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	if(!m_pSet->IsOpen())m_pSet->Open();
	if(m_pSet->IsBOF()&& m_pSet->IsEOF())return	TRUE;
	m_pSet->MoveFirst();
	m_AD=m_pSet->m_AD;
	m_AL=m_pSet->m_AL;
	m_AZ1=m_pSet->m_AZ1;
	m_AZ2=m_pSet->m_AZ2;
	m_AZ3=m_pSet->m_AZ3;
	m_Cam_Obli=m_pSet->m_Cam_Obliquity;
	m_Correct=m_pSet->m_Correct_Filter;
	m_Exp=m_pSet->m_Exposal_System;
	m_Glass=m_pSet->m_Glass_Mask;
	m_Gun=m_pSet->m_Electronic_Gun_Model;
	m_Input_Date=m_pSet->m_Input_Date;
	m_Lamp=m_pSet->m_Lamp_House;
	m_Lens1=m_pSet->m_Lens1_Model;
	m_Lens2=m_pSet->m_Lens2_Model;
	m_Lens3=m_pSet->m_Lens3_Model;
	m_LO=m_pSet->m_LO;
	m_PPC=m_pSet->m_PPC_Cam;
	m_S_G=m_pSet->m_S_G;
	m_S_R_B=m_pSet->m_S_R_B;
	m_Sz=m_pSet->m_Sz;
	m_Screen=m_pSet->m_Screen_Model;
	m_Shadow=m_pSet->m_Shadow_Model;
	m_SL1_R_B=m_pSet->m_SL1_R_B;
	m_SL2_R_B=m_pSet->m_SL2_R_B;
	m_VL1_G=m_pSet->m_VL1_G;
	m_VL2_G=m_pSet->m_VL2_G;
	m_Z1=m_pSet->m_Z1;
	m_Z2=m_pSet->m_Z2;
	m_Z3=m_pSet->m_Z3;
	m_EditQ=m_pSet->m_EditQ;
	m_DeltP=m_pSet->m_DeltP;
	m_YPB1=m_pSet->m_YPB1;
	m_YPB2=m_pSet->m_YPB2;
	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 + -