📄 setldmeteraddrdlg.cpp
字号:
// SetLDMeterAddrDlg.cpp : implementation file
//
#include "stdafx.h"
#include "fert2000.h"
#include "SetLDMeterAddrDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern ADDR *Addr;
/////////////////////////////////////////////////////////////////////////////
// CSetLDMeterAddrDlg dialog
CSetLDMeterAddrDlg::CSetLDMeterAddrDlg(CWnd* pParent /*=NULL*/)
: CDialog(CSetLDMeterAddrDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CSetLDMeterAddrDlg)
m_ComStr = _T("");
m_AddrStr = _T("");
//}}AFX_DATA_INIT
}
void CSetLDMeterAddrDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSetLDMeterAddrDlg)
DDX_Control(pDX, IDC_METERADDR, m_AddrCtrl);
DDX_Control(pDX, IDC_COMBO_METER, m_ComMeter);
DDX_CBString(pDX, IDC_COMBO_METER, m_ComStr);
DDX_Text(pDX, IDC_METERADDR, m_AddrStr);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSetLDMeterAddrDlg, CDialog)
//{{AFX_MSG_MAP(CSetLDMeterAddrDlg)
ON_CBN_SELCHANGE(IDC_COMBO_METER, OnSelchangeComboMeter)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSetLDMeterAddrDlg message handlers
BOOL CSetLDMeterAddrDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
int Index=0;
STATION * Station=Addr->Station_addr;
for(int i=0;i<Station->rtunum;i++)
{
RTUPARA * rtuparameter=Addr->RtuPara_addr+i;//GetRtuParaPt(Addr,i);
if(rtuparameter)
{
if(rtuparameter->useflag !=0)
{
if(rtuparameter->protocolno==1)
{
m_ComMeter.AddString(rtuparameter->rtuname);
m_ComMeter.SetItemData(Index,rtuparameter->rtuno);
Index++;
}
}
}
}
m_AddrCtrl.Clear();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CSetLDMeterAddrDlg::OnSelchangeComboMeter()
{
// TODO: Add your control notification handler code here
int k=m_ComMeter.GetCurSel();
STATION * Station=Addr->Station_addr;
int j=m_ComMeter.GetItemData(k);
RTUPARA * rtuparameter=Addr->RtuPara_addr+j;
if(rtuparameter)
m_AddrStr=rtuparameter->rtuaddr;
UpdateData(FALSE);
}
void CSetLDMeterAddrDlg::OnOK()
{
// TODO: Add extra validation here
int k=m_ComMeter.GetCurSel();
int j=m_ComMeter.GetItemData(k);
RTUPARA * rtuparameter=Addr->RtuPara_addr+j;
if(rtuparameter)
rtuparameter->CommandSendFlag[4]=TRUE;
MessageBox("请按下欲设置表址的龙电电表的2号按钮10秒钟","注意",MB_OK);
// CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -