#include "stdafx.h" #include "YWBJDlg.h" #include "UITools.h" IMPLEMENT_DYNAMIC(CYWBJDlg, CDialog) CYWBJDlg::CYWBJDlg(CWnd* pParent /*=NULL*/) : CDialog(CYWBJDlg::IDD, pParent) , m_dX(0.5) , m_sName(_T("独立式烟感报警器")) , m_sNo(_T("RX60005")) , m_sSpec(_T("独立式烟感报警器")) , m_dD(110) , m_dH(60) , m_sProvide(_T("北京瑞德沃商务有限公司")) //http://www.redwo.com.cn/baojingqi/96.html , m_dSp(5.0) , m_id3DEqu(-1) { static int nNo = 1; m_nNo = nNo; nNo++; m_bRemove = false; UIDataCache::Read(_T("%d%d%d%d%s%s%s%s%i") , _T("CYWBJDlg") , &m_dX , &m_dD , &m_dH , &m_dSp , &m_sName , &m_sNo , &m_sSpec , &m_sProvide , &m_id3DEqu); } CYWBJDlg::~CYWBJDlg() { } void CYWBJDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_EDIT1, m_dX); DDX_Text(pDX, IDC_EDIT3, m_sName); DDX_Text(pDX, IDC_EDIT4, m_sNo); DDX_Text(pDX, IDC_EDIT5, m_sSpec); DDX_Text(pDX, IDC_EDIT6, m_dD); DDX_Text(pDX, IDC_EDIT7, m_dH); DDX_Text(pDX, IDC_EDIT8, m_sProvide); DDX_Text(pDX, IDC_EDIT9, m_dSp); DDX_Text(pDX, IDC_EDIT28, m_nNo); DDV_MinMaxInt(pDX, m_nNo, 1, 99); } BEGIN_MESSAGE_MAP(CYWBJDlg, CDialog) ON_BN_CLICKED(IDOK2, &CYWBJDlg::OnBnClickedOk2) ON_BN_CLICKED(IDOK, &CYWBJDlg::OnBnClickedOk) ON_BN_CLICKED(IDC_BUTTON_SEL, &CYWBJDlg::OnBnClickedButtonSel) END_MESSAGE_MAP() BOOL CYWBJDlg::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 CYWBJDlg::OnBnClickedOk() { UpdateData(); if (m_dH < 1.0 && m_dD < 1.0 ) { AfxMessageBox(_T("烟雾报警器尺寸太小!")); return; } if (m_sName.IsEmpty() || m_sNo.IsEmpty()) { AfxMessageBox(_T("请输入烟雾报警器名称和编号!")); return; } UIDataCache::Write(_T("%d%d%d%d%s%s%s%s%i") , _T("CYWBJDlg") , &m_dX , &m_dD , &m_dH , &m_dSp , &m_sName , &m_sNo , &m_sSpec , &m_sProvide , &m_id3DEqu); OnOK(); } void CYWBJDlg::OnBnClickedButtonSel() { EquTools::selectEquAndShow(&m_wndGs, m_id3DEqu); } void CYWBJDlg::OnBnClickedOk2() { m_bRemove = true; OnOK(); } int CYWBJDlg::GetScript(CString& sScript, int nRoomIndex,CString& sOffsets) { //SMOKALARM:房间|位置|间距|外径|高度|名称|编号|规格|厂家|偏移|编号|3d索引 sScript.Format(_T("") , nRoomIndex , m_dX , m_dSp , m_dD , m_dH , m_sName , m_sNo , m_sSpec , m_sProvide , sOffsets , m_nNo , m_id3DEqu); return 0; }