📄 timelimitsetdlg.cpp
字号:
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 + -