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

📄 timelimitsetdlg.cpp

📁 本程序使用Visual C++6.0编写
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	DDX_Control(pDX, IDC_CHECK168, m_CHECK168Checked);
	DDX_Control(pDX, IDC_CHECK167, m_CHECK167Checked);
	DDX_Control(pDX, IDC_CHECK166, m_CHECK166Checked);
	DDX_Control(pDX, IDC_CHECK165, m_CHECK165Checked);
	DDX_Control(pDX, IDC_CHECK164, m_CHECK164Checked);
	DDX_Control(pDX, IDC_CHECK163, m_CHECK163Checked);
	DDX_Control(pDX, IDC_CHECK162, m_CHECK162Checked);
	DDX_Control(pDX, IDC_CHECK161, m_CHECK161Checked);
	DDX_Control(pDX, IDC_CHECK160, m_CHECK160Checked);
	DDX_Control(pDX, IDC_CHECK16, m_CHECK16Checked);
	DDX_Control(pDX, IDC_CHECK159, m_CHECK159Checked);
	DDX_Control(pDX, IDC_CHECK158, m_CHECK158Checked);
	DDX_Control(pDX, IDC_CHECK157, m_CHECK157Checked);
	DDX_Control(pDX, IDC_CHECK156, m_CHECK156Checked);
	DDX_Control(pDX, IDC_CHECK155, m_CHECK155Checked);
	DDX_Control(pDX, IDC_CHECK154, m_CHECK154Checked);
	DDX_Control(pDX, IDC_CHECK153, m_CHECK153Checked);
	DDX_Control(pDX, IDC_CHECK152, m_CHECK152Checked);
	DDX_Control(pDX, IDC_CHECK151, m_CHECK151Checked);
	DDX_Control(pDX, IDC_CHECK150, m_CHECK150Checked);
	DDX_Control(pDX, IDC_CHECK15, m_CHECK15Checked);
	DDX_Control(pDX, IDC_CHECK149, m_CHECK149Checked);
	DDX_Control(pDX, IDC_CHECK148, m_CHECK148Checked);
	DDX_Control(pDX, IDC_CHECK147, m_CHECK147Checked);
	DDX_Control(pDX, IDC_CHECK146, m_CHECK146Checked);
	DDX_Control(pDX, IDC_CHECK145, m_CHECK145Checked);   
	DDX_Control(pDX, IDC_CHECK144, m_CHECK144Checked);
	DDX_Control(pDX, IDC_CHECK143, m_CHECK143Checked);
	DDX_Control(pDX, IDC_CHECK142, m_CHECK142Checked);
	DDX_Control(pDX, IDC_CHECK141, m_CHECK141Checked);
	DDX_Control(pDX, IDC_CHECK140, m_CHECK140Checked);
	DDX_Control(pDX, IDC_CHECK14, m_CHECK14Checked);
	DDX_Control(pDX, IDC_CHECK139, m_CHECK139Checked);
	DDX_Control(pDX, IDC_CHECK138, m_CHECK138Checked);
	DDX_Control(pDX, IDC_CHECK137, m_CHECK137Checked);
	DDX_Control(pDX, IDC_CHECK136, m_CHECK136Checked);
	DDX_Control(pDX, IDC_CHECK135, m_CHECK135Checked);
	DDX_Control(pDX, IDC_CHECK134, m_CHECK134Checked);
	DDX_Control(pDX, IDC_CHECK133, m_CHECK133Checked);
	DDX_Control(pDX, IDC_CHECK132, m_CHECK132Checked);
	DDX_Control(pDX, IDC_CHECK131, m_CHECK131Checked);
	DDX_Control(pDX, IDC_CHECK130, m_CHECK130Checked);
	DDX_Control(pDX, IDC_CHECK13, m_CHECK13Checked);
	DDX_Control(pDX, IDC_CHECK129, m_CHECK129Checked);
	DDX_Control(pDX, IDC_CHECK128, m_CHECK128Checked);
	DDX_Control(pDX, IDC_CHECK127, m_CHECK127Checked);
	DDX_Control(pDX, IDC_CHECK126, m_CHECK126Checked);
	DDX_Control(pDX, IDC_CHECK125, m_CHECK125Checked);
	DDX_Control(pDX, IDC_CHECK124, m_CHECK124Checked);
	DDX_Control(pDX, IDC_CHECK123, m_CHECK123Checked);
	DDX_Control(pDX, IDC_CHECK122, m_CHECK122Checked);
	DDX_Control(pDX, IDC_CHECK121, m_CHECK121Checked);   
	DDX_Control(pDX, IDC_CHECK120, m_CHECK120Checked);
	DDX_Control(pDX, IDC_CHECK12, m_CHECK12Checked);
	DDX_Control(pDX, IDC_CHECK119, m_CHECK119Checked);
	DDX_Control(pDX, IDC_CHECK118, m_CHECK118Checked);
	DDX_Control(pDX, IDC_CHECK117, m_CHECK117Checked);
	DDX_Control(pDX, IDC_CHECK116, m_CHECK116Checked);
	DDX_Control(pDX, IDC_CHECK115, m_CHECK115Checked);
	DDX_Control(pDX, IDC_CHECK114, m_CHECK114Checked);
	DDX_Control(pDX, IDC_CHECK113, m_CHECK113Checked);
	DDX_Control(pDX, IDC_CHECK112, m_CHECK112Checked);
	DDX_Control(pDX, IDC_CHECK111, m_CHECK111Checked);
	DDX_Control(pDX, IDC_CHECK110, m_CHECK110Checked);
	DDX_Control(pDX, IDC_CHECK11, m_CHECK11Checked);
	DDX_Control(pDX, IDC_CHECK109, m_CHECK109Checked);
	DDX_Control(pDX, IDC_CHECK108, m_CHECK108Checked);
	DDX_Control(pDX, IDC_CHECK107, m_CHECK107Checked);
	DDX_Control(pDX, IDC_CHECK106, m_CHECK106Checked);
	DDX_Control(pDX, IDC_CHECK105, m_CHECK105Checked);
	DDX_Control(pDX, IDC_CHECK104, m_CHECK104Checked);
	DDX_Control(pDX, IDC_CHECK103, m_CHECK103Checked);
	DDX_Control(pDX, IDC_CHECK102, m_CHECK102Checked);
	DDX_Control(pDX, IDC_CHECK101, m_CHECK101Checked);
	DDX_Control(pDX, IDC_CHECK100, m_CHECK100Checked);
	DDX_Control(pDX, IDC_CHECK10, m_CHECK10Checked);
	DDX_Control(pDX, IDC_CHECK1, m_CHECK1Checked);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CTimeLimitSetDlg, CDialog)
	//{{AFX_MSG_MAP(CTimeLimitSetDlg)
	ON_WM_CLOSE()
	ON_BN_CLICKED(IDC_IPSET, OnIpsetCheck)
	ON_BN_CLICKED(IDC_IPSET1, OnIpset1Check)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CTimeLimitSetDlg message handlers

BOOL CTimeLimitSetDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	// TODO: Add extra initialization here
	m_cancel.SetShade(CShadeButtonST::SHS_VSHADE);
	m_OK.SetShade(CShadeButtonST::SHS_VSHADE);

	pFilterconfRecordset.CreateInstance(__uuidof(Recordset));
	pUrlfilterRecordset.CreateInstance(__uuidof(Recordset));
    //得到当前活动的TreeView
	CLeftTreeView *p_TreeView;
    CSjsysDoc *m_pDoc=(CSjsysDoc *)((CMainFrame *)
		        AfxGetApp()->m_pMainWnd)->GetActiveDocument();
	POSITION pos=m_pDoc->GetFirstViewPosition();
	while (pos!=NULL)
	{
		CView *pView= m_pDoc->GetNextView(pos);
		if (pView->IsKindOf(RUNTIME_CLASS(CLeftTreeView)))
			p_TreeView=(CLeftTreeView *)pView;
	}
    //获得当前活动的树项
	CTreeCtrl &m_tree=p_TreeView->GetTreeCtrl();
    HTREEITEM hSel=m_tree.GetSelectedItem();
	if(!m_tree.ItemHasChildren(hSel))
	{
	   TreeName=m_tree.GetItemText(hSel);
       try
	   {
		 CString  SQLStr;
	     SQLStr.Format("select * from Filterconf where Deviceid in (select ID from Device where Devicename='%s')",TreeName);
	     
		 pFilterconfRecordset->Open(_bstr_t(SQLStr),
                           ((CSjsysApp*)AfxGetApp())->pConnection.GetInterfacePtr(),
							 adOpenDynamic,
							 adLockOptimistic,
							 adCmdText);
		 
	     if (pFilterconfRecordset->RecordCount==0)
		 {
		   CString str1;
		   str1.Format("系统在数据库中没有查找到该设备(%s)的相应记录!",TreeName);
		   MessageBox(str1);
		 }
	     else  //如果超找到相应记录,则按照查找结果初始化所有CheckBox
		 {
            
          CString value="";
		  _variant_t var;
          var = pFilterconfRecordset->GetCollect("Deviceid");
		  if(var.vt != VT_NULL)
			   DeviceId=(LPCSTR)_bstr_t(var);
	      var = pFilterconfRecordset->GetCollect("MonitorTime");
		  if(var.vt != VT_NULL)
			   value=(LPCSTR)_bstr_t(var);
		 // MessageBox(value);
		  int j;
		  char k;
		  for(i=0;i<168;i++)
		  {  
			  //初始化每一个CheckBox
			  k=value.GetAt(i);
			  j=atoi(&k);
			  m_CHECKArr[i]->SetCheck(j);
		  }
		 }
		 pFilterconfRecordset->Close();
	   }
	   	
	   catch(_com_error *e)
	   {
		AfxMessageBox(e->ErrorMessage());
	   }
	   return TRUE;
	}
	else
	{
      MessageBox("提示:您确定主窗口中选中的是设备项吗?");
	  //CDialog::OnClose();
	  return FALSE;
	}


	
	//return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}



void CTimeLimitSetDlg::OnClose() 
{
	// TODO: Add your message handler code here and/or call default
	 //记得释放   
    for(i=0;i<m_CHECKArr.GetSize();i++)   
	{   
      delete  m_CHECKArr[i];   
      m_CHECKArr[i]=NULL;   
	}   
    m_CHECKArr.SetSize(0);  


	CDialog::OnClose();
}

void CTimeLimitSetDlg::OnOK() 
{
	// TODO: Add extra validation here

	if(MessageBox("您确定保存当前的所有修改吗?","询问",MB_YESNO|MB_ICONINFORMATION)==IDYES)
	{   
		 UpdateData(FALSE);
		 int j;
		 CString str="",str1="";
		 for(i=0;i<168;i++)
		  {  
			  j=m_CHECKArr[i]->GetCheck();
			  if((j==1)||(j==0))
              {
                  str1.Format("%d",j);
				  str+=str1;
			  }
		  }
         //MessageBox(str);
		 try
		 {
		   CString  SQLStr;
	       SQLStr.Format("select * from Filterconf where Deviceid in (select ID from Device where Devicename='%s')",TreeName);
	       
		   pFilterconfRecordset->Open(_bstr_t(SQLStr),
                           ((CSjsysApp*)AfxGetApp())->pConnection.GetInterfacePtr(),
							adOpenDynamic,
							adLockOptimistic,
							adCmdText);
		   //更新Filterconf数据库
		   
		   if (pFilterconfRecordset->RecordCount!=0)
		   { 
			 pFilterconfRecordset->EditMode;
             pFilterconfRecordset->PutCollect("MonitorTime",_variant_t(str));  //更新监控设置项   
	         pFilterconfRecordset->Update();
           }
		   /*//如果用户选中了IP禁止复选框,则保存该设置
		   if(m_IPSetCheck.GetCheck()==1)
		   {
			  
	          SQLStr.Format("select * from Urlfilter where Deviceid =%d",atoi(DeviceId));
              pUrlfilterRecordset->Open(_bstr_t(SQLStr),
                           ((CSjsysApp*)AfxGetApp())->pConnection.GetInterfacePtr(),
							adOpenDynamic,
							adLockOptimistic,
							adCmdText);
			  
		      //更新Urlfilter数据库
             if (pUrlfilterRecordset->RecordCount!=0)
			 { 
				
		        pUrlfilterRecordset->EditMode;
				str="0";
                pUrlfilterRecordset->PutCollect("Action",_variant_t(str));  //设置为禁止上网  
	            pUrlfilterRecordset->Update();
			 }
			 else
			 {
				 
				 pUrlfilterRecordset->AddNew();
				 MessageBox("here!");
                 pUrlfilterRecordset->PutCollect("Deviceid",_variant_t(DeviceId));    //存入设备ID
				 str="0";
				 pUrlfilterRecordset->PutCollect("Urlname",_variant_t(str));  //填充Urlname
				 pUrlfilterRecordset->PutCollect("Action",_variant_t(str));  //设置为禁止上网
			     pUrlfilterRecordset->Update();
			 }
			  pUrlfilterRecordset->Close();
		   }*/

		 }
         catch(_com_error *e)
		 {
	           AfxMessageBox(e->ErrorMessage());
		 }
         pFilterconfRecordset->Close();
	     AfxMessageBox( "数据库更新成功!" );
		   
	
	}

   CDialog::OnOK();
}


void CTimeLimitSetDlg::OnIpsetCheck() 
{
	// TODO: Add your control notification handler code here
	
	 m_IpSet1Check.SetCheck(0);
	 //全部禁止
	 for(i=0;i<m_CHECKArr.GetSize();i++)   
	{   
      m_CHECKArr[i]->SetCheck(0);   
	} 
}

void CTimeLimitSetDlg::OnIpset1Check() 
{
	// TODO: Add your control notification handler code here
    m_IPSetCheck.SetCheck(0);
	//全部允许
   for(i=0;i<m_CHECKArr.GetSize();i++)   
	{   
      m_CHECKArr[i]->SetCheck(1);   
	}
}

⌨️ 快捷键说明

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