124 lines
3.4 KiB
C++
124 lines
3.4 KiB
C++
// DialPlcStatusSetting.cpp : implementation file
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "geomative.h"
|
|
#include "DialPlcStatusSetting.h"
|
|
|
|
#ifdef _DEBUG
|
|
#define new DEBUG_NEW
|
|
#undef THIS_FILE
|
|
static char THIS_FILE[] = __FILE__;
|
|
#endif
|
|
extern int g_iUILanguage;
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CDialPlcStatusSetting dialog
|
|
|
|
|
|
CDialPlcStatusSetting::CDialPlcStatusSetting(CWnd* pParent /*=NULL*/)
|
|
: CDialog(CDialPlcStatusSetting::IDD, pParent)
|
|
{
|
|
//{{AFX_DATA_INIT(CDialPlcStatusSetting)
|
|
// NOTE: the ClassWizard will add member initialization here
|
|
//}}AFX_DATA_INIT
|
|
m_iTimerInterval = 1200;
|
|
}
|
|
|
|
|
|
void CDialPlcStatusSetting::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
//{{AFX_DATA_MAP(CDialPlcStatusSetting)
|
|
DDX_Control(pDX, IDC_COMBO_REP_METHOD, m_cmbRepMethid);
|
|
//}}AFX_DATA_MAP
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CDialPlcStatusSetting, CDialog)
|
|
//{{AFX_MSG_MAP(CDialPlcStatusSetting)
|
|
ON_CBN_SELCHANGE(IDC_COMBO_REP_METHOD, OnSelchangeComboRepMethod)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CDialPlcStatusSetting message handlers
|
|
|
|
BOOL CDialPlcStatusSetting::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
if (g_iUILanguage == LANG_ZHCN)
|
|
{
|
|
SetWindowText(_T("上报设置"));
|
|
GetDlgItem(IDC_STATIC_REPORTMETHOD)->SetWindowText(_T("上报方式:"));
|
|
GetDlgItem(IDC_STATIC_TIMEINTERVAL)->SetWindowText(_T("时间间隔:"));
|
|
GetDlgItem(IDOK)->SetWindowText(_T("确定"));
|
|
GetDlgItem(IDCANCEL)->SetWindowText(_T("取消"));
|
|
|
|
m_cmbRepMethid.AddString(_T("定时"));
|
|
m_cmbRepMethid.AddString(_T("手动查询"));
|
|
}
|
|
else
|
|
{
|
|
m_cmbRepMethid.AddString(_T("Timer"));
|
|
m_cmbRepMethid.AddString(_T("Query"));
|
|
}
|
|
// TODO: Add extra initialization here
|
|
|
|
CString strVal = "";
|
|
strVal.Format(_T("%d"),m_iTimerInterval);
|
|
GetDlgItem(IDC_EDIT_TIME_INTERVAL)->SetWindowText(strVal);
|
|
m_cmbRepMethid.SetCurSel(0);
|
|
|
|
((CEdit*)(GetDlgItem(IDC_EDIT_TIME_INTERVAL)))->SetLimitText(5);
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
|
// EXCEPTION: OCX Property Pages should return FALSE
|
|
}
|
|
|
|
void CDialPlcStatusSetting::OnOK()
|
|
{
|
|
// TODO: Add extra validation here
|
|
if (m_cmbRepMethid.GetCurSel() == 0)
|
|
{
|
|
CString strTxt = _T("");
|
|
GetDlgItem(IDC_EDIT_TIME_INTERVAL)->GetWindowText(strTxt);
|
|
m_iTimerInterval = atoi(strTxt);
|
|
if (m_iTimerInterval < 600 || m_iTimerInterval > 3600)
|
|
{
|
|
if (LANG_ZHCN == g_iUILanguage)
|
|
AfxMessageBox(_T("时间间隔必须在600到3600之间"));
|
|
else
|
|
MessageBoxEx(NULL, _T("Time interval must between 600 to 3600"), STRING_MESSAGEBOXEX_TITLE, MB_OK, MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US));
|
|
return;
|
|
}
|
|
}
|
|
else
|
|
m_iTimerInterval = 0;
|
|
|
|
CDialog::OnOK();
|
|
}
|
|
|
|
void CDialPlcStatusSetting::OnSelchangeComboRepMethod()
|
|
{
|
|
// TODO: Add your control notification handler code here
|
|
if (m_cmbRepMethid.GetCurSel() == 0)
|
|
{
|
|
GetDlgItem(IDC_EDIT_TIME_INTERVAL)->EnableWindow(TRUE);
|
|
GetDlgItem(IDC_EDIT_TIME_INTERVAL)->SetWindowText(_T("1200"));
|
|
|
|
if (LANG_ZHCN == g_iUILanguage)
|
|
GetDlgItem(IDOK)->SetWindowText(_T("确定"));
|
|
else
|
|
GetDlgItem(IDOK)->SetWindowText(_T("Ok"));
|
|
}
|
|
else
|
|
{
|
|
GetDlgItem(IDC_EDIT_TIME_INTERVAL)->EnableWindow(FALSE);
|
|
GetDlgItem(IDC_EDIT_TIME_INTERVAL)->SetWindowText(_T("0"));
|
|
|
|
if (LANG_ZHCN == g_iUILanguage)
|
|
GetDlgItem(IDOK)->SetWindowText(_T("查询"));
|
|
else
|
|
GetDlgItem(IDOK)->SetWindowText(_T("Query"));
|
|
}
|
|
}
|