⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setldmeteraddrdlg.cpp

📁 这是一个变电站的监控程序
💻 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 + -