// CPjPage1.cpp: 实现文件 // #include "stdafx.h" #include "Servo.h" #include "CCjPage3.h" #include "afxdialogex.h" // CPjPage1 对话框 IMPLEMENT_DYNAMIC(CCjPage3, CCjPageBase) CCjPage3::CCjPage3(CWnd* pParent /*=nullptr*/) : CCjPageBase(IDD_CJ_PAGE3, pParent) { } CCjPage3::~CCjPage3() { } void CCjPage3::DoDataExchange(CDataExchange* pDX) { CCjPageBase::DoDataExchange(pDX); } BEGIN_MESSAGE_MAP(CCjPage3, CCjPageBase) ON_WM_DESTROY() ON_EN_CHANGE(IDC_EDIT_CJ_ID, &CCjPage3::OnEnChangeEditCjId) END_MESSAGE_MAP() // CPjPage1 消息处理程序 BOOL CCjPage3::OnInitDialog() { CCjPageBase::OnInitDialog(); return TRUE; // return TRUE unless you set the focus to a control // 异常: OCX 属性页应返回 FALSE } void CCjPage3::OnDestroy() { CCjPageBase::OnDestroy(); // TODO: 在此处添加消息处理程序代码 } void CCjPage3::Resize() { CCjPageBase::Resize(); /* CWnd* pItem; CRect rcClient, rcItem; GetClientRect(&rcClient); pItem = GetDlgItem(IDC_LABEL_NO_SEL); pItem->GetWindowRect(&rcItem); pItem->MoveWindow((rcClient.Width() - rcItem.Width()) / 2, (rcClient.Height() - rcItem.Height()) / 2, rcItem.Width(), rcItem.Height()); */ } int CCjPage3::OnApply() { // SERVO::CControlJob* if (m_pContext == nullptr) return -1; SERVO::CControlJob* pControlJob = (SERVO::CControlJob*)m_pContext; // 更新名称 BOOL bOkName = TRUE; char szBuffer[256]; GetDlgItemText(IDC_EDIT_CJ_ID, szBuffer, 256); pControlJob->setId(std::string(szBuffer)); ContentChanged(1); return 0; } void CCjPage3::OnSetContext(void* pContext) { UpdateCjData(); } void CCjPage3::UpdateCjData() { if (m_pContext == nullptr) return; m_bContentChangedLock = TRUE; SERVO::CControlJob* pControlJob = (SERVO::CControlJob*)m_pContext; SetDlgItemText(IDC_EDIT_CJ_ID, pControlJob->id().c_str()); m_bContentChangedLock = FALSE; } void CCjPage3::OnEnChangeEditCjId() { ContentChanged(0); }