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

📄 viewfenjicableinfo.cpp

📁 电缆故障监控系统
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// ViewFenjiCableInfo.cpp : implementation file
//

#include "stdafx.h"
#include "remotemonitor.h"
#include "ViewFenjiCableInfo.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CViewFenjiCableInfo dialog


CViewFenjiCableInfo::CViewFenjiCableInfo(CWnd* pParent /*=NULL*/)
	: CDialog(CViewFenjiCableInfo::IDD, pParent)
{
	//{{AFX_DATA_INIT(CViewFenjiCableInfo)
	m_edit1 = 0;
	m_edit2 = 0;
	m_edit3 = 0;
	m_edit4 = 0;
	//}}AFX_DATA_INIT
}


void CViewFenjiCableInfo::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CViewFenjiCableInfo)
	DDX_Control(pDX, IDC_MODE2, m_mode2);
	DDX_Control(pDX, IDC_MODE1, m_mode1);
	DDX_Control(pDX, IDC_CABLELIST, m_list2);
	DDX_Control(pDX, IDC_FENJILIST, m_list1);
	DDX_Text(pDX, IDC_EDIT1, m_edit1);
	DDV_MinMaxInt(pDX, m_edit1, 0, 999);
	DDX_Text(pDX, IDC_EDIT2, m_edit2);
	DDV_MinMaxInt(pDX, m_edit2, 0, 999);
	DDX_Text(pDX, IDC_EDIT3, m_edit3);
	DDV_MinMaxInt(pDX, m_edit3, 0, 999);
	DDX_Text(pDX, IDC_EDIT4, m_edit4);
	DDV_MinMaxInt(pDX, m_edit4, 0, 999);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CViewFenjiCableInfo, CDialog)
	//{{AFX_MSG_MAP(CViewFenjiCableInfo)
	ON_BN_CLICKED(IDC_PROBE1, OnProbe1)
	ON_BN_CLICKED(IDC_PROBE2, OnProbe2)
	ON_CBN_SELCHANGE(IDC_MODE1, OnSelchangeMode1)
	ON_CBN_SELCHANGE(IDC_MODE2, OnSelchangeMode2)
	ON_BN_CLICKED(IDC_EXPORT1, OnExport1)
	ON_BN_CLICKED(IDC_EXPORT2, OnExport2)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CViewFenjiCableInfo message handlers

BOOL CViewFenjiCableInfo::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	CString str;

    GetDlgItem(IDC_MYSTATIC1)->GetWindowPlacement(&m_mystaticwnd[0]);
    GetDlgItem(IDC_MYSTATIC2)->GetWindowPlacement(&m_mystaticwnd[1]);
    GetDlgItem(IDC_MYSTATIC3)->GetWindowPlacement(&m_mystaticwnd[2]);
    GetDlgItem(IDC_MYSTATIC4)->GetWindowPlacement(&m_mystaticwnd[3]);
    GetDlgItem(IDC_EDIT1)->GetWindowPlacement(&m_editwnd[0]);
    GetDlgItem(IDC_EDIT2)->GetWindowPlacement(&m_editwnd[1]);
    GetDlgItem(IDC_EDIT3)->GetWindowPlacement(&m_editwnd[2]);
    GetDlgItem(IDC_EDIT4)->GetWindowPlacement(&m_editwnd[3]);

	WINDOWPLACEMENT wndplace;
	wndplace.rcNormalPosition.left	    = 2000;
	wndplace.rcNormalPosition.right	    = 2000;
	wndplace.rcNormalPosition.top		= 2000;
	wndplace.rcNormalPosition.bottom	= 2000;
    GetDlgItem(IDC_MYSTATIC1)->SetWindowPlacement(&wndplace);
    GetDlgItem(IDC_MYSTATIC2)->SetWindowPlacement(&wndplace);
    GetDlgItem(IDC_MYSTATIC3)->SetWindowPlacement(&wndplace);
    GetDlgItem(IDC_MYSTATIC4)->SetWindowPlacement(&wndplace);
    GetDlgItem(IDC_EDIT1)->SetWindowPlacement(&wndplace);
    GetDlgItem(IDC_EDIT2)->SetWindowPlacement(&wndplace);
    GetDlgItem(IDC_EDIT3)->SetWindowPlacement(&wndplace);
    GetDlgItem(IDC_EDIT4)->SetWindowPlacement(&wndplace);

	m_mode1.AddString("全部记录");
	m_mode1.AddString("按分机号");
    m_mode1.SetCurSel(0);
	m_mode2.AddString("全部记录");
	m_mode2.AddString("按分机号");
    m_mode2.SetCurSel(0);
    GetDlgItem(IDC_PROBE1)->EnableWindow(FALSE);
    GetDlgItem(IDC_PROBE2)->EnableWindow(FALSE);

	m_list1.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
	m_list2.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);

	m_list1.InsertColumn( 0, "分机号", LVCFMT_LEFT,60, 0 );
    m_list1.InsertColumn( 1, "分机名", LVCFMT_LEFT,70, 0 );
    m_list1.InsertColumn( 2, "分机电话", LVCFMT_LEFT,100, 0 );
	m_list1.InsertColumn( 3, "用户1", LVCFMT_LEFT,70, 0 );
    m_list1.InsertColumn( 4, "用户电话1", LVCFMT_LEFT,100, 0 );
	m_list1.InsertColumn( 5, "用户2", LVCFMT_LEFT,70, 0 );
    m_list1.InsertColumn( 6, "用户电话2", LVCFMT_LEFT,100, 0 );
	m_list1.InsertColumn( 7, "用户3", LVCFMT_LEFT,70, 0 );
    m_list1.InsertColumn( 8, "用户电话3", LVCFMT_LEFT,100, 0 );
	m_list1.InsertColumn( 9, "用户4", LVCFMT_LEFT,70, 0 );
    m_list1.InsertColumn( 10, "用户电话4", LVCFMT_LEFT,100, 0 );
	m_list1.InsertColumn( 11, "用户5", LVCFMT_LEFT,70, 0 );
    m_list1.InsertColumn( 12, "用户电话5", LVCFMT_LEFT,100, 0 );
	m_list1.InsertColumn( 13, "用户6", LVCFMT_LEFT,70, 0 );
    m_list1.InsertColumn( 14, "用户电话6", LVCFMT_LEFT,100, 0 );
	m_list1.InsertColumn( 15, "维护1", LVCFMT_LEFT,70,0);
    m_list1.InsertColumn( 16, "维护电话1",   LVCFMT_LEFT,100,0);
	m_list1.InsertColumn( 17, "维护2", LVCFMT_LEFT,70,0);
    m_list1.InsertColumn( 18, "维护电话2",   LVCFMT_LEFT,100,0);
	m_list1.InsertColumn( 19, "维护3", LVCFMT_LEFT,70,0);
    m_list1.InsertColumn( 20, "维护电话3",   LVCFMT_LEFT,100,0);
	m_list1.InsertColumn( 21, "维护4", LVCFMT_LEFT,70,0);
    m_list1.InsertColumn( 22, "维护电话4",   LVCFMT_LEFT,100,0);
	m_list1.InsertColumn( 23, "维护5", LVCFMT_LEFT,70,0);
    m_list1.InsertColumn( 24, "维护电话5",   LVCFMT_LEFT,100,0);
	m_list1.InsertColumn( 25, "维护6", LVCFMT_LEFT,70,0);
    m_list1.InsertColumn( 26, "维护电话6",   LVCFMT_LEFT,100,0);
    m_list1.InsertColumn( 27, "无应答等待时间",   LVCFMT_LEFT,100,0);
    m_list1.InsertColumn( 28, "灵敏度",   LVCFMT_LEFT,100,0);
    m_list1.InsertColumn( 29, "循环拨打次数",   LVCFMT_LEFT,100,0);
    m_list1.InsertColumn( 30, "布防等待时间",   LVCFMT_LEFT,100,0);
    m_list1.InsertColumn( 31, "电压转折点",   LVCFMT_LEFT,100,0);
    m_list1.InsertColumn( 32, "本机模式",   LVCFMT_LEFT,100,0);
    m_list1.InsertColumn( 33, "测距系数",   LVCFMT_LEFT,100,0);

	m_list2.InsertColumn( 0, "分机号", LVCFMT_LEFT,60, 0 );
    m_list2.InsertColumn( 1, "电缆号", LVCFMT_LEFT,60, 0 );
    m_list2.InsertColumn( 2, "电缆起点", LVCFMT_LEFT,100, 0 );
	m_list2.InsertColumn( 3, "电缆终点", LVCFMT_LEFT,100, 0 );
    m_list2.InsertColumn( 4, "功能设置", LVCFMT_LEFT,100, 0 );


	m_table1.m_strSort=_T("[Id]");
	if(!m_table1.IsOpen())
       m_table1.Open();
    InSertList1();

	m_table2.m_strSort=_T("[Id]");
	if(!m_table2.IsOpen())
       m_table2.Open();
	InSertList2();

	UpdateData(FALSE);
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}
void CViewFenjiCableInfo::InSertList1()
{
	int i,ntotalItem;
	CString str;

	while (!m_table1.IsEOF())
	{
		ntotalItem = m_list1.GetItemCount();
		str.Format("%3.3d",m_table1.m_Id);
		m_list1.InsertItem(ntotalItem,str);
		m_list1.SetItem(ntotalItem,1,LVIF_TEXT,_T(m_table1.m_Name),0,0,0,NULL);
		m_list1.SetItem(ntotalItem,2,LVIF_TEXT,_T(m_table1.m_telephone),0,0,0,NULL);
		for(i=0;i<6;i++)
		{
			m_list1.SetItem(ntotalItem,i*2+3,LVIF_TEXT,_T(m_table1.m_username[i]),0,0,0,NULL);
			m_list1.SetItem(ntotalItem,i*2+4,LVIF_TEXT,_T(m_table1.m_usertel[i]),0,0,0,NULL);
			m_list1.SetItem(ntotalItem,i*2+15,LVIF_TEXT,_T(m_table1.m_maintenance[i]),0,0,0,NULL);
			m_list1.SetItem(ntotalItem,i*2+16,LVIF_TEXT,_T(m_table1.m_maintenancetel[i]),0,0,0,NULL);
		}
		str.Format("%d",m_table1.m_ackwaittime);
		m_list1.SetItem(ntotalItem,27,LVIF_TEXT,_T(str),0,0,0,NULL);
		str.Format("%d",m_table1.m_sensitive);
		m_list1.SetItem(ntotalItem,28,LVIF_TEXT,_T(str),0,0,0,NULL);
		str.Format("%d",m_table1.m_callnumber);
		m_list1.SetItem(ntotalItem,29,LVIF_TEXT,_T(str),0,0,0,NULL);
		str.Format("%d",m_table1.m_waittime);
		m_list1.SetItem(ntotalItem,30,LVIF_TEXT,_T(str),0,0,0,NULL);
		str.Format("%2.1f",m_table1.m_xudianchi);
		m_list1.SetItem(ntotalItem,31,LVIF_TEXT,_T(str),0,0,0,NULL);
		if(m_table1.m_mode==1)
		   str="单机模式";
		else 
		   str="联网模式";
		m_list1.SetItem(ntotalItem,32,LVIF_TEXT,_T(str),0,0,0,NULL);
		str.Format("%d",m_table1.m_zejuxisu);
		m_list1.SetItem(ntotalItem,33,LVIF_TEXT,_T(str),0,0,0,NULL);

        m_table1.MoveNext();
	}
}
void CViewFenjiCableInfo::InSertList2()
{
	int ntotalItem;
	CString str;
    while (!m_table2.IsEOF())
	{
		ntotalItem = m_list2.GetItemCount();
		str.Format("%3.3d",m_table2.m_Id/100);
		m_list2.InsertItem(ntotalItem,str);
		str.Format("%3.3d",m_table2.m_Id%100);
		m_list2.SetItem(ntotalItem,1,LVIF_TEXT,_T(str),0,0,0,NULL);
		m_list2.SetItem(ntotalItem,2,LVIF_TEXT,_T(m_table2.m_startname),0,0,0,NULL);
		m_list2.SetItem(ntotalItem,3,LVIF_TEXT,_T(m_table2.m_endname),0,0,0,NULL);
		if(m_table2.m_Id%100<=8)
		{
			if(m_table2.m_state==0)
				str="撤防";
			else
				str="布防";
		}
		else
		{
			switch(m_table2.m_state)
			{
			case 0:
				str="电缆防盗";
				break;
			case 1:
				str="温度告警";
				break;
			case 2:
				str="湿度告警";
				break;
			case 3:
				str="红外告警";
				break;
			case 4:
				str="门禁告警";
				break;
			case 5:
				str="烟雾告警";
				break;
			case 6:
				str="浸水告警";
				break;
			case 7:
				str="有害气体告警";
			case 8:
				str="撤防";
				break;
			default:
				break;
				
			}
		}
		m_list2.SetItem(ntotalItem,4,LVIF_TEXT,_T(str),0,0,0,NULL);
		m_table2.MoveNext();
	}
}
void CViewFenjiCableInfo::OnOK() 
{
	// TODO: Add extra validation here
	if(m_table1.IsOpen())
       m_table1.Close();
	if(m_table2.IsOpen())
       m_table2.Close();
	CDialog::OnOK();
}

void CViewFenjiCableInfo::OnProbe1() 
{
	// TODO: Add your control notification handler code here
	int nIndex=m_mode1.GetCurSel();
    CString str1,str2;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -