Files
envi-code/SourceCode/Code2026/Pool3dCmd/ZLKDDlg.cpp
T
2026-09-28 15:28:50 +08:00

96 lines
1.7 KiB
C++

#include "stdafx.h"
#include "ZLKDDlg.h"
#include "CDKDDlg.h"
IMPLEMENT_DYNAMIC(CZLKDDlg, CDialog)
CZLKDDlg::CZLKDDlg(CWnd* pParent /*=NULL*/)
: CDialog(CZLKDDlg::IDD, pParent)
, m_nRow(2)
, m_nCol(10)
, m_dY(1500)
, m_dX(1500)
{
m_bHoleValid = FALSE;
memset(&m_kHoleData,0,sizeof(KHoleData));
m_bExt = FALSE;
m_dExt1 = 0;
m_dExt2 = 0;
GET_CACHE(CZLKDDlg, %d%d%f%f, &m_nRow, &m_nCol, &m_dY, &m_dX);
}
CZLKDDlg::~CZLKDDlg()
{
}
void CZLKDDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT1, m_nRow);
DDX_Text(pDX, IDC_EDIT2, m_nCol);
DDX_Text(pDX, IDC_EDIT3, m_dY);
DDX_Text(pDX, IDC_EDIT12, m_dX);
}
BEGIN_MESSAGE_MAP(CZLKDDlg, CDialog)
ON_BN_CLICKED(IDOK, &CZLKDDlg::OnBnClickedOk)
ON_BN_CLICKED(IDC_BUTTON1, &CZLKDDlg::OnBnClickedButton1)
END_MESSAGE_MAP()
BOOL CZLKDDlg::OnInitDialog()
{
CDialog::OnInitDialog();
UpdateData(FALSE);
return TRUE;
}
void CZLKDDlg::OnBnClickedOk()
{
UpdateData();
if (!m_bHoleValid)
{
AfxMessageBox(_T("请设置开动参数!"));
return;
}
if (m_nRow == 0 || m_nCol == 0)
{
AfxMessageBox(_T("请输入正确的行列数!"));
return;
}
if (m_dX < 2.0 || m_dY < 2.0)
{
AfxMessageBox(_T("行列间距太小,请输入合理的行列参数!"));
return;
}
SET_CACHE(CZLKDDlg, %d%d%f%f, m_nRow, m_nCol, m_dY, m_dX);
OnOK();
}
void CZLKDDlg::OnBnClickedButton1()
{
CCDKDDlg dlg;
dlg.m_bIsArrayKD = TRUE;
dlg.m_dBomEl = m_dBolEl;
dlg.m_dHoleDeep = m_kHoleData.m_dDeep;
dlg.m_dTL = m_kHoleData.m_dDeep;
if ( IDOK == dlg.DoModal() )
{
m_bExt = dlg.m_bExt;
m_dExt1 = dlg.m_dExt1;
m_dExt2 = dlg.m_dExt2;
dlg.GetHoleData(m_kHoleData);
m_bHoleValid = TRUE;
}
}
void CZLKDDlg::GetKHoleData(KHoleData& data) const
{
memcpy(&data,&m_kHoleData,sizeof(KHoleData));
}