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

📄 netctlschrecdlg.cpp

📁 TM8000硬盘录像机客户端编程文档和Demo源代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// NetCtlSchRecDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Sample.h"
#include "NetCtlSchRecDlg.h"
#include "NetRemoteCtrlDlg.h"

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

extern CNetRemoteCtrlDlg   *pNetRemoteCtlDlg;
extern USER_DVR_PARAMETER     *Con_pDVRPara; 
extern int ENGLISH;
extern LoginParam             m_LoginParam; 
ScheduleRecParam              m_ScheduleRecParam;

//---------------------------------------
/////////////////////////////////////////////////////////////////////////////
// CNetCtlSchRecDlg dialog

CNetCtlSchRecDlg::CNetCtlSchRecDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CNetCtlSchRecDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CNetCtlSchRecDlg)
	m_SchRec = FALSE;
	m_AllPort = FALSE;
	m_BgnTime1 =0;
	m_EndTime1 = 0;
	m_BgnTime2 = 0;
	m_EndTime2 = 0;
	//}}AFX_DATA_INIT
	pParent = NULL ;
}


void CNetCtlSchRecDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CNetCtlSchRecDlg)
	DDX_Control(pDX, IDC_RREC_SCHEDULE2_ENDTIME, m_cEndTime2);
	DDX_Control(pDX, IDC_RREC_SCHEDULE2_BGNTIME, m_cBgnTime2);
	DDX_Control(pDX, IDC_RREC_SCHEDULE1_ENDTIME, m_cEndTime1);
	DDX_Control(pDX, IDC_RREC_SCHEDULE1_BGNTIME, m_cBgnTime1);
	DDX_Control(pDX, IDC_PORT_COMBO, m_PortCombo);
	DDX_Control(pDX, IDC_WEEK_TAB, m_weekTab);
	DDX_Check(pDX, IDC_CHK_SCHREC, m_SchRec);
	DDX_Check(pDX, IDC_ALLPORT_CHECK, m_AllPort);
	DDX_DateTimeCtrl(pDX, IDC_RREC_SCHEDULE1_BGNTIME, m_BgnTime1);
	DDX_DateTimeCtrl(pDX, IDC_RREC_SCHEDULE1_ENDTIME, m_EndTime1);
	DDX_DateTimeCtrl(pDX, IDC_RREC_SCHEDULE2_BGNTIME, m_BgnTime2);
	DDX_DateTimeCtrl(pDX, IDC_RREC_SCHEDULE2_ENDTIME, m_EndTime2);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CNetCtlSchRecDlg, CDialog)
	//{{AFX_MSG_MAP(CNetCtlSchRecDlg)
	ON_BN_CLICKED(IDC_SET_BUTTON, OnSetButton)
	ON_CBN_SELCHANGE(IDC_PORT_COMBO, OnSelchangePortCombo)
	ON_NOTIFY(TCN_SELCHANGE, IDC_WEEK_TAB, OnSelchangeWeekTab)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CNetCtlSchRecDlg message handlers

BOOL CNetCtlSchRecDlg::Create(CWnd* pParentWnd) 
{	
	pParent = (CNetRemoteCtrlDlg *)pParentWnd ;
	return CDialog::Create(IDD, pParentWnd);
}

BOOL CNetCtlSchRecDlg::OnInitDialog() 
{
	char * l_Mon;//=_T("Mon.");
	char * l_Tue;//=_T("Tue.");
	char * l_Wed;//=_T("Wed.");
	char * l_Thu;//=_T("Thu.");
	char * l_Fri;//=_T("Fri.");
	char * l_Sat;//=_T("Sat.");
	char * l_Sun;//=_T("Sun.");
	char * l_Set;//=_T("Setup");
	char * l_Everyday;//=_T("Everyday");
	char * l_Port;//=_T("Camera");
	char * l_AllPort;//=_T("All camera");
	char * l_Schedule1;//=_T("Time zone 1:");
	char * l_Schedule2;//=_T("Time zone 2:");
	char * l_UseSch;
	if(ENGLISH)
	{
		l_Mon=_T("Mon.");
		l_Tue=_T("Tue.");
		l_Wed=_T("Wed.");
		l_Thu=_T("Thu.");
		l_Fri=_T("Fri.");
		l_Sat=_T("Sat.");
		l_Sun=_T("Sun.");
		l_Set=_T("Setup");
		l_Everyday=_T("Everyday");
		l_Port=_T("Channel");
		l_AllPort=_T("All channel");
		l_Schedule1=_T("Time zone 1:");
		l_Schedule2=_T("Time zone 2:");
		l_UseSch=_T("Enable schedule record");
	}
	else
	{
		l_Mon=_T("星期一");
		l_Tue=_T("星期二");
		l_Wed=_T("星期三");
		l_Thu=_T("星期四");
		l_Fri=_T("星期五");
		l_Sat=_T("星期六");
		l_Sun=_T("星期天");
		l_Set=_T("设置");
		l_Everyday=_T("每天");;
		l_Port=_T("通道");
		l_AllPort=_T("所有通道");
		l_Schedule1=_T("定时录像时间段一:");
		l_Schedule2=_T("定时录像时间段二:");
		l_UseSch=_T("启用定时录像");
	}
	//#endif
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here

	m_PortCombo.ResetContent() ;
//
	m_cBgnTime1.SetFormat("HH:mm");
	m_cEndTime1.SetFormat("HH:mm");
	m_cBgnTime2.SetFormat("HH:mm");
	m_cEndTime2.SetFormat("HH:mm");
	if(Con_pDVRPara!=NULL)
	{
		for (int i=0;i<Con_pDVRPara->nPortNo ;i++)
		{
			CString   str ;
			str.Format("%s%02d",l_Port,i+1) ;
			m_PortCombo.AddString(str) ;
		}
		m_PortCombo.SetCurSel(0);
	}
	m_weekTab.InsertItem(0, l_Mon, 0) ;
	m_weekTab.InsertItem(1, l_Tue, 1) ;
	m_weekTab.InsertItem(2, l_Wed, 2) ;
	m_weekTab.InsertItem(3, l_Thu, 3) ;
	m_weekTab.InsertItem(4, l_Fri, 4) ;
	m_weekTab.InsertItem(5, l_Sat, 5) ;
	m_weekTab.InsertItem(6, l_Sun, 6) ;
	m_weekTab.InsertItem(7, l_Everyday,7);
    m_weekTab.SetCurSel(0);

	CWnd           *pWnd ;
	pWnd = GetDlgItem(IDC_ALLPORT_CHECK) ;
	pWnd->SetWindowText(l_AllPort);
	pWnd = GetDlgItem(IDC_SET_BUTTON) ;
	pWnd->SetWindowText(l_Set);
	pWnd = GetDlgItem(IDC_CHK_SCHREC) ;
	pWnd->SetWindowText(l_UseSch);
	pWnd=GetDlgItem(IDC_STATICSCHEDUL1);
	pWnd->SetWindowText(l_Schedule1);

	pWnd=GetDlgItem(IDC_STATICSCHEDULE2);
	pWnd->SetWindowText(l_Schedule2);
	
	return TRUE ;
}

void CNetCtlSchRecDlg::OnSetButton() 
{
	char * l_SelectPort;//=_T("Please select scheduled record camera!");
	char * l_SelectScheduleDay;//=_T("Please select scheduled record day!");
	char * l_BgnGTEnd;
	if(ENGLISH)
	{
		l_SelectPort=_T("Please select scheduled record channel!");
		l_SelectScheduleDay=_T("Please select scheduled record day!");
		l_BgnGTEnd=_T("Begin time is greater than end time!");
	}
	else
	{
		l_SelectPort=_T("请选择定时录像通道!");
		l_SelectScheduleDay=_T("请选择定时录像星期!");
		l_BgnGTEnd=_T("开始时间大于结束时间");
	}
//#endif
	unsigned char  nPort, nWeek ;
	UpdateData(TRUE) ;
	if (m_AllPort)
	{
		nPort = 0 ;
	}
	else
	{
		int    i ;
		i = m_PortCombo.GetCurSel() ;
		if (i < 0) 
		{
			AfxMessageBox(l_SelectPort, IDOK, NULL) ;//_T("请选择定时录像端口!")
			return ;
		}
		nPort = i+1 ;
	}
	int   nCurTab ;
	nCurTab = m_weekTab.GetCurSel() ;
	if (nCurTab < 0)
	{
		AfxMessageBox(l_SelectScheduleDay, IDOK, NULL) ;//_T("请选择定时录像星期!")
		return ;
	}
	if(m_BgnTime1>m_EndTime1)
	{
		AfxMessageBox(l_BgnGTEnd);
		GetDlgItem(IDC_RREC_SCHEDULE1_BGNTIME)->SetFocus();
		return;
	}
	if(m_BgnTime2>m_EndTime2)
	{
		AfxMessageBox(l_BgnGTEnd);
		GetDlgItem(IDC_RREC_SCHEDULE2_BGNTIME)->SetFocus();
		return;
	}

	nWeek = nCurTab ;
	if(m_SchRec)
	{
		if(nWeek==7)
		{
			nSelDay=1<<7;
		}
		else
		{
			nSelDay &= 0x7f;  //去除每天标志
			nSelDay |= (1<<nWeek);
		}
	}
	else
	{
		if(nWeek==7)
		{
			nSelDay &= 0x7f;
		}
		else
		{
			nSelDay &= (~(1<<nWeek));
		}
	}
	if(nWeek==7)
		nWeek=0;
	else
		nWeek=nWeek+1;
	pNetRemoteCtlDlg->SetNetRemoteSchRecSet(nPort, nWeek, m_BgnTime1, m_EndTime1, m_BgnTime2, m_EndTime2,nSelDay);
//---------------
   if(Con_pDVRPara!=NULL)
   {
	   short k;

⌨️ 快捷键说明

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