#include "stdafx.h" #include "YYHTDlg.h" #include "uitools.h" IMPLEMENT_DYNAMIC(CYYHTDlg, CDialog) CYYHTDlg::CYYHTDlg(CWnd* pParent /*=NULL*/) : CDialog(CYYHTDlg::IDD, pParent) , m_nPos(0) , m_dY(0.5) , m_dSP(10.0) , m_sName(_T("一氧化碳报警器 JSN-990")) , m_dW(300) , m_dH(200) , m_dT(50) , m_sProvider(_T("深圳市立鼎丰科技有限公司")) , m_sPPM(_T("50-400")) , m_id3DEqu(-1) { static int nNo = 1; m_nNo = nNo; nNo++; m_bRemove = false; UIDataCache::Read(_T("%i%d%d%d%d%d%s%s%s%i") , _T("CYYHTDlg") , &m_nPos , &m_dY , &m_dSP , &m_dW , &m_dH , &m_dT , &m_sName , &m_sProvider , &m_sPPM , &m_id3DEqu); } CYYHTDlg::~CYYHTDlg() { } void CYYHTDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Radio(pDX, IDC_RADIO1, m_nPos); DDX_Text(pDX, IDC_EDIT1, m_dY); DDX_Text(pDX, IDC_EDIT9, m_dSP); DDX_Text(pDX, IDC_EDIT3, m_sName); DDX_Text(pDX, IDC_EDIT6, m_dW); DDX_Text(pDX, IDC_EDIT7, m_dH); DDX_Text(pDX, IDC_EDIT15, m_dT); DDX_Text(pDX, IDC_EDIT8, m_sProvider); DDX_Text(pDX, IDC_EDIT4, m_sPPM); DDX_Text(pDX, IDC_EDIT16, m_nNo); DDV_MinMaxInt(pDX, m_nNo, 1, 99); } BEGIN_MESSAGE_MAP(CYYHTDlg, CDialog) ON_BN_CLICKED(IDOK, &CYYHTDlg::OnBnClickedOk) ON_BN_CLICKED(IDOK2, &CYYHTDlg::OnBnClickedOk2) ON_BN_CLICKED(IDC_BUTTON_SEL, &CYYHTDlg::OnBnClickedButtonSel) END_MESSAGE_MAP() BOOL CYYHTDlg::OnInitDialog() { CDialog::OnInitDialog(); UpdateData(FALSE); #ifndef NDEBUG EquTools::subClassGsViewAndShow(&m_wndGs, this, IDC_STATIC_3D, m_id3DEqu); #else CWnd *pWnd = GetDlgItem(IDC_STATIC_GRP); if (pWnd) pWnd->ShowWindow(SW_HIDE); pWnd = GetDlgItem(IDC_BUTTON_SEL); if (pWnd) pWnd->ShowWindow(SW_HIDE); pWnd = GetDlgItem(IDC_STATIC_3D); if (pWnd) pWnd->ShowWindow(SW_HIDE); #endif // DEBU return TRUE; } void CYYHTDlg::OnBnClickedOk() { UpdateData(TRUE); if (m_sName.IsEmpty() || m_sPPM.IsEmpty() ) { AfxMessageBox(_T("请输入一氧化碳报警器名称型号!")); return; } if (m_dW < 10.0 || m_dH < 10.0 || m_dT < 1.0) { AfxMessageBox(_T("一氧化碳报警器尺寸太小!请重新输入尺寸!")); return; } UIDataCache::Write(_T("%i%d%d%d%d%d%s%s%s%i") , _T("CYYHTDlg") , &m_nPos , &m_dY , &m_dSP , &m_dW , &m_dH , &m_dT , &m_sName , &m_sProvider , &m_sPPM , &m_id3DEqu); OnOK(); } void CYYHTDlg::OnBnClickedOk2() { m_bRemove = true; OnOK(); } void CYYHTDlg::OnBnClickedButtonSel() { EquTools::selectEquAndShow(&m_wndGs, m_id3DEqu); } int CYYHTDlg::GetScript(CString& sScrpt, int nRoomIndex,CString& sOffsets) { //COALARM:房间|左右侧|位置|间距|宽度|高度|厚度|名称|浓度|偏移|编号|3d索引 sScrpt.Format(_T("") , nRoomIndex , m_nPos , m_dY , m_dSP , m_dW , m_dH , m_dT , m_sName , m_sPPM , m_sProvider , sOffsets , m_nNo , m_id3DEqu); return m_nPos; }