a
This commit is contained in:
@@ -0,0 +1,219 @@
|
||||
// OLSynOperato.cpp : 实现文件
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "GeoMative.h"
|
||||
#include "OLSynOperato.h"
|
||||
#include "afxdialogex.h"
|
||||
|
||||
// COLSynOperato 对话框
|
||||
extern CGeoMativeApp theApp;
|
||||
extern int g_iUILanguage;
|
||||
extern int g_UIOffset;
|
||||
|
||||
BEGIN_EASYSIZE_MAP(COLSynOperato)
|
||||
// EASYSIZE(control,left,top,right,bottom,options)
|
||||
EASYSIZE(IDC_STATIC_DEV_SN, ES_BORDER, ES_BORDER, ES_BORDER, ES_KEEPSIZE, 0)
|
||||
EASYSIZE(IDC_TD_DESN_OL, ES_BORDER, ES_BORDER, ES_BORDER, ES_KEEPSIZE, 0)
|
||||
EASYSIZE(IDC_OP_SYN_TAB_OL, ES_BORDER, IDC_STATIC_DEV_SN, ES_BORDER, ES_BORDER, 0)
|
||||
//EASYSIZE(IDD_OP_SYN_TD_OL, ES_BORDER, ES_BORDER, ES_BORDER, ES_BORDER, 0)
|
||||
|
||||
END_EASYSIZE_MAP
|
||||
|
||||
IMPLEMENT_DYNAMIC(COLSynOperato, CDialog)
|
||||
|
||||
COLSynOperato::COLSynOperato(_ConnectionPtr& pConnection, CWnd* pParent)
|
||||
: CDialog(COLSynOperato::IDD, pParent)
|
||||
{
|
||||
ASSERT(NULL != pConnection);
|
||||
m_pConnection = pConnection;
|
||||
}
|
||||
|
||||
COLSynOperato::~COLSynOperato()
|
||||
{
|
||||
}
|
||||
|
||||
void COLSynOperato::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
DDX_Control(pDX, IDC_TD_DESN_OL, m_cbDevSN);
|
||||
DDX_Control(pDX, IDC_OP_SYN_TAB_OL, m_synTab);
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(COLSynOperato, CDialog)
|
||||
ON_NOTIFY(TCN_SELCHANGE, IDC_OP_SYN_TAB_OL, &COLSynOperato::OnTcnSelchangeOpSynTabOl)
|
||||
ON_CBN_SELCHANGE(IDC_TD_DESN_OL, &COLSynOperato::OnCbnSelchangeTdDesnOl)
|
||||
ON_WM_SIZE()
|
||||
ON_WM_SIZING()
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
|
||||
// COLSynOperato 消息处理程序
|
||||
|
||||
|
||||
void COLSynOperato::OnTcnSelchangeOpSynTabOl(NMHDR *pNMHDR, LRESULT *pResult)
|
||||
{
|
||||
// TODO: 在此添加控件通知处理程序代码
|
||||
*pResult = 0;
|
||||
int iCurSel = VAL_MINUS_ONE;
|
||||
|
||||
iCurSel = m_synTab.GetCurSel();
|
||||
switch (iCurSel)
|
||||
{
|
||||
case TAB_INDEX_DMS:
|
||||
m_SynDevDlg.ShowWindow(true);
|
||||
m_SynTdDlg.ShowWindow(false);
|
||||
m_SynDevDlg.OnInitLocalList();
|
||||
m_SynDevDlg.OnSynAndInitSevDevList();
|
||||
m_SynDevDlg.OnSynAndInitSevCableList();
|
||||
break;
|
||||
|
||||
case TAB_INDEX_SPT:
|
||||
m_SynDevDlg.ShowWindow(false);
|
||||
m_SynTdDlg.ShowWindow(true);
|
||||
m_SynTdDlg.OnInitLocalList();
|
||||
m_SynTdDlg.OnSynAndInitSevTdList();
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
m_synTab.SetFocus();
|
||||
}
|
||||
|
||||
|
||||
void COLSynOperato::OnCbnSelchangeTdDesnOl()
|
||||
{
|
||||
// TODO: 在此添加控件通知处理程序代码
|
||||
|
||||
//根据重选的设备号进行设置
|
||||
m_SynTdDlg.m_uiPlcID = m_uiPlcId;
|
||||
|
||||
CString Str;
|
||||
int nIndex = m_cbDevSN.GetCurSel();
|
||||
if (CB_ERR != nIndex)
|
||||
{
|
||||
m_cbDevSN.GetLBText(nIndex, m_SynTdDlg.m_szDeSN);
|
||||
m_cbDevSN.GetLBText(nIndex, m_SynDevDlg.m_szDeSN);
|
||||
}
|
||||
else
|
||||
{
|
||||
GetDlgItem(IDC_TD_DESN_OL)->GetWindowText(m_SynTdDlg.m_szDeSN);
|
||||
GetDlgItem(IDC_TD_DESN_OL)->GetWindowText(m_SynDevDlg.m_szDeSN);
|
||||
}
|
||||
m_SynDevDlg.OnInitLocalList();
|
||||
m_SynDevDlg.OnSynAndInitSevDevList();
|
||||
m_SynDevDlg.OnSynAndInitSevCableList();
|
||||
}
|
||||
|
||||
void COLSynOperato::InitialDevShow()
|
||||
{
|
||||
if (m_cbDevSN.GetCount() > 0)
|
||||
{
|
||||
m_cbDevSN.SetCurSel(0);
|
||||
OnCbnSelchangeTdDesnOl();
|
||||
}
|
||||
}
|
||||
|
||||
BOOL COLSynOperato::OnInitDialog()
|
||||
{
|
||||
CDialog::OnInitDialog();
|
||||
|
||||
// TODO: 在此添加额外的初始化
|
||||
// TODO: Add extra initialization here
|
||||
if (LANG_ZHCN == g_iUILanguage)
|
||||
{
|
||||
SetWindowText(_T("同步"));
|
||||
GetDlgItem(IDC_STATIC_DEV_SN)->SetWindowText(_T("已连接上的主机设备"));
|
||||
}
|
||||
CString szLabel;
|
||||
CTabCtrl* pSynTab = NULL;
|
||||
|
||||
szLabel.Empty();
|
||||
if (LANG_ZHCN == g_iUILanguage)
|
||||
{
|
||||
szLabel += _T("设备信息");//IDS_SYN_TD + g_UIOffset);
|
||||
}
|
||||
else
|
||||
{
|
||||
szLabel += _T("Device info");//IDS_SYN_TD + g_UIOffset);
|
||||
}
|
||||
ASSERT(!szLabel.IsEmpty());
|
||||
m_synTab.InsertItem(TAB_INDEX_DMS, szLabel);
|
||||
|
||||
szLabel.Empty();
|
||||
szLabel.LoadString(IDS_SYN_TD + g_UIOffset);
|
||||
ASSERT(!szLabel.IsEmpty());
|
||||
m_synTab.InsertItem(TAB_INDEX_SPT, szLabel);
|
||||
|
||||
m_SynDevDlg.Create(IDD_OP_SYN_DEV_OL, GetDlgItem(IDC_OP_SYN_TAB_OL));
|
||||
m_SynTdDlg.Create(IDD_OP_SYN_TD_OL, GetDlgItem(IDC_OP_SYN_TAB_OL));
|
||||
|
||||
pSynTab = (CTabCtrl*)GetDlgItem(IDC_OP_SYN_TAB_OL);
|
||||
|
||||
INIT_EASYSIZE;
|
||||
ShowWindow(SW_MAXIMIZE);
|
||||
|
||||
if ((NULL != pSynTab) && (VAL_ZERO != m_SynDevDlg.GetSafeHwnd()) && (VAL_ZERO != m_SynTdDlg.GetSafeHwnd()))
|
||||
{
|
||||
CRect rect;
|
||||
pSynTab->GetClientRect(&rect);
|
||||
|
||||
rect.top += 23;
|
||||
rect.bottom -= 2;
|
||||
rect.left += 2;
|
||||
rect.right -= 2;
|
||||
|
||||
m_SynDevDlg.MoveWindow(&rect);
|
||||
m_SynTdDlg.MoveWindow(&rect);
|
||||
|
||||
//m_SynTdDlg.ShowWindow(SW_MAXIMIZE);
|
||||
//m_SynDevDlg.ShowWindow(SW_MAXIMIZE);
|
||||
}
|
||||
pSynTab = NULL;
|
||||
m_SynTdDlg.m_pConnection = m_pConnection;
|
||||
m_SynDevDlg.ShowWindow(true);
|
||||
m_SynTdDlg.ShowWindow(false);
|
||||
|
||||
//ModifyStyle(0, WS_SIZEBOX);
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// 异常: OCX 属性页应返回 FALSE
|
||||
}
|
||||
|
||||
|
||||
void COLSynOperato::OnSize(UINT nType, int cx, int cy)
|
||||
{
|
||||
CDialog::OnSize(nType, cx, cy);
|
||||
|
||||
UPDATE_EASYSIZE;
|
||||
|
||||
//当界面变化时更新CTabCtrl控件中的对话框大小
|
||||
CTabCtrl* pSynTab = NULL;
|
||||
pSynTab = (CTabCtrl*)GetDlgItem(IDC_OP_SYN_TAB);
|
||||
|
||||
if ((NULL != pSynTab) && (VAL_ZERO != m_SynTdDlg.GetSafeHwnd()) && (VAL_ZERO != m_SynDevDlg.GetSafeHwnd()))
|
||||
{
|
||||
CRect rect;
|
||||
pSynTab->GetClientRect(&rect);
|
||||
|
||||
rect.top += 23;
|
||||
rect.bottom -= 2;
|
||||
rect.left += 2;
|
||||
rect.right -= 2;
|
||||
|
||||
m_SynTdDlg.MoveWindow(&rect);
|
||||
m_SynDevDlg.MoveWindow(&rect);
|
||||
}
|
||||
pSynTab = NULL;
|
||||
// TODO: 在此处添加消息处理程序代码
|
||||
}
|
||||
|
||||
|
||||
void COLSynOperato::OnSizing(UINT fwSide, LPRECT pRect)
|
||||
{
|
||||
CDialog::OnSizing(fwSide, pRect);
|
||||
EASYSIZE_MINSIZE(650, 550, fwSide, pRect);
|
||||
// TODO: 在此处添加消息处理程序代码
|
||||
}
|
||||
Reference in New Issue
Block a user