#include "stdafx.h" #include "CHFZDDlg.h" IMPLEMENT_DYNAMIC(CHFZDDlg, CDialog) CHFZDDlg::CHFZDDlg(CWnd* pParent /*=NULL*/) : CDialog(IDD_HFZD_DLG, pParent) , m_dLen(0) , m_dSegLen(0) , m_nSegs(30) , m_bEraseArc(FALSE) { } CHFZDDlg::~CHFZDDlg() { } void CHFZDDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_EDIT1, m_dLen); DDX_Text(pDX, IDC_EDIT2, m_dSegLen); DDX_Text(pDX, IDC_EDIT3, m_nSegs); DDX_Check(pDX, IDC_CHECK1, m_bEraseArc); } BEGIN_MESSAGE_MAP(CHFZDDlg, CDialog) ON_EN_CHANGE(IDC_EDIT3, &CHFZDDlg::OnEnChangeEdit3) ON_BN_CLICKED(IDOK, &CHFZDDlg::OnBnClickedOk) ON_EN_CHANGE(IDC_EDIT2, &CHFZDDlg::OnEnChangeEdit2) END_MESSAGE_MAP() BOOL CHFZDDlg::OnInitDialog() { CDialog::OnInitDialog(); UpdateData(); OnEnChangeEdit3(); return TRUE; } void CHFZDDlg::OnEnChangeEdit2() { this->UpdateData(); if (m_dSegLen > 0) { m_nSegs = (int)(m_dLen / m_dSegLen + 0.5); UpdateData(FALSE); } } void CHFZDDlg::OnEnChangeEdit3() { this->UpdateData(); if (m_nSegs > 0) { m_dSegLen = m_dLen / m_nSegs; UpdateData(FALSE); } } void CHFZDDlg::OnBnClickedOk() { this->UpdateData(); if (m_nSegs <= 2) { AfxMessageBox(_T("请检查分段合理数,至少3个分段!")); return; } CDialog::OnOK(); }