// Dlg_Permit.cpp : 实现文件 // #include "stdafx.h" #include "StoneU_Door.h" #include "Dlg_Frame.h" #include "Dlg_Permit.h" #include ".\dlg_permit.h" #include "Global.h" #include "mdlProject.h" #include "afxcmn.h" #include "afxwin.h" // CDlg_Permit 对话框 IMPLEMENT_DYNAMIC(CDlg_Permit, CDialog) CDlg_Permit::CDlg_Permit(CWnd* pParent /*=NULL*/) : CDialog(CDlg_Permit::IDD, pParent) , m_sSta_Show(g_strChooseControl) { m_hRoot = NULL; m_hCurretItem = NULL; } CDlg_Permit::~CDlg_Permit() { } void CDlg_Permit::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Control(pDX, IDC_LIST_SRC, m_ListBox_UserSrc); DDX_Control(pDX, IDC_LIST_DEST, m_ListBox_UserDes); DDX_Control(pDX, IDC_LIST_SRC2, m_ListBox_DoorScr); DDX_Control(pDX, IDC_LIST_DEST2, m_ListBox_DoorDes); DDX_Control(pDX, IDC_TREE_DOOR, m_Tree_Door); DDX_Text(pDX, IDC_STA_SHOW, m_sSta_Show); DDX_Control(pDX, IDC_BTN_SEL_SINGLE, m_Btn_ChooseOne); DDX_Control(pDX, IDC_BTN_SEL_ALL, m_Btn_ChooseAll); DDX_Control(pDX, IDC_BTN_REVERSE_SEL_SINGLE, m_Btn_NotChooseOne); DDX_Control(pDX, IDC_BTN_REVERSE_SEL_ALL, m_Btn_NotChooseAll); DDX_Control(pDX, IDC_BTN_CHOOSEDATE, m_Btn_ChooseDate); DDX_Control(pDX, IDC_BTN_ENABLE, m_Btn_SendPermit); DDX_Control(pDX, IDC_BTN_SEL_SINGLE2, m_Btn_ChooseOneDoor); DDX_Control(pDX, IDC_BTN_SEL_ALL2, m_Btn_ChooseAllDoor); DDX_Control(pDX, IDC_BTN_REVERSE_SEL_SINGLE2, m_Btn_NotChooseOneDoor); DDX_Control(pDX, IDC_BTN_REVERSE_SEL_ALL2, m_Btn_NotChooseAllDoor); } BEGIN_MESSAGE_MAP(CDlg_Permit, CDialog) ON_BN_CLICKED(IDC_BTN_SEL_SINGLE, OnBnClickedBtnSelSingle) ON_BN_CLICKED(IDC_BTN_SEL_ALL, OnBnClickedBtnSelAll) ON_BN_CLICKED(IDC_BTN_REVERSE_SEL_SINGLE, OnBnClickedBtnReverseSelSingle) ON_BN_CLICKED(IDC_BTN_REVERSE_SEL_ALL, OnBnClickedBtnReverseSelAll) ON_BN_CLICKED(IDC_BTN_SEL_SINGLE2, OnBnClickedBtnSelSingle2) ON_BN_CLICKED(IDC_BTN_SEL_ALL2, OnBnClickedBtnSelAll2) ON_BN_CLICKED(IDC_BTN_REVERSE_SEL_SINGLE2, OnBnClickedBtnReverseSelSingle2) ON_BN_CLICKED(IDC_BTN_REVERSE_SEL_ALL2, OnBnClickedBtnReverseSelAll2) ON_BN_CLICKED(IDC_BTN_ENABLE, OnBnClickedBtnEnable) ON_BN_CLICKED(IDC_BTN_DISABLE, OnBnClickedBtnDisable) ON_WM_CTLCOLOR() ON_WM_ERASEBKGND() ON_BN_CLICKED(IDC_BTN_CHOOSEDATE, OnBnClickedBtnChoosedate) ON_NOTIFY(NM_DBLCLK, IDC_TREE_DOOR, OnNMDblclkTreeDoor) END_MESSAGE_MAP() // CDlg_Permit 消息处理程序 BOOL CDlg_Permit::OnInitDialog() { CDialog::OnInitDialog(); // TODO: 在此添加额外的初始化 InitTreeInfo(); //ADOCtrl.ReadPermit( &m_ListBox_UserDes,&m_ListBox_DoorDes ); //ADOCtrl.ReadUserCanChoose( &m_ListBox_UserSrc,&m_ListBox_UserDes ); //ADOCtrl.ReadDoorCanChoose( &m_ListBox_DoorScr,&m_ListBox_DoorDes ); return TRUE; // return TRUE unless you set the focus to a control // 异常: OCX 属性页应返回 FALSE } void CDlg_Permit::InitTreeInfo(void) { m_sSta_Show = g_strChooseControl; UpdateData( false ); m_hRoot = NULL; m_hCurretItem = NULL; m_ListBox_UserSrc.ResetContent(); m_ListBox_UserDes.ResetContent(); m_ListBox_DoorScr.ResetContent(); m_ListBox_DoorDes.ResetContent(); m_Btn_SendPermit.EnableWindow( false ); m_Tree_Door.ModifyStyle(0, TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS); m_Tree_Door.DeleteAllItems(); m_Tree_Door.SetItemHeight(20); m_wndImageList.DeleteImageList(); m_wndImageList.Create(IDB_CONTROL, 16, 1, RGB(255, 0, 255)); m_Tree_Door.SetImageList(&m_wndImageList, LVSIL_NORMAL); ////插入串口和设备 m_hRoot = m_Tree_Door.InsertItem(g_strAllController, 0, 0); for( int i=0;i=0 ) { if( g_Controller[i].sName!="" ) m_Tree_Door.InsertItem( g_Controller[i].sName,0,0,m_hRoot); } } //CDBInterface::GetInstancePtr()->GetAllGroupToTree( &m_wndTree, m_hRoot ); //展开树 m_Tree_Door.Expand(m_Tree_Door.GetRootItem(),TVE_EXPAND); HTREEITEM handleTreeItem = m_Tree_Door.GetRootItem(); while(handleTreeItem) { handleTreeItem = m_Tree_Door.GetChildItem(handleTreeItem); m_Tree_Door.Expand(handleTreeItem, TVE_EXPAND); } } void CDlg_Permit::SetPos( CRect rect ) { CRect rc1; rc1.left = 0; rc1.right = rc1.left+rect.Width(); rc1.top = 0; rc1.bottom = rc1.top+rect.Height()-4; this->MoveWindow( rc1 ); CRect rcTree; rcTree.left = 10; rcTree.right = rcTree.left + 200; rcTree.top = 10; rcTree.bottom = rc1.bottom-0; GetDlgItem(IDC_TREE_DOOR)->MoveWindow( rcTree ); CRect rcShow; rcShow.left = rcTree.right+10; rcShow.right = rc1.right-10; rcShow.top = 10; rcShow.bottom = rc1.bottom-0; GetDlgItem(IDC_STA_SHOW)->MoveWindow( rcShow ); CRect rcBtnEnable; rcBtnEnable.right = rcShow.right-20; rcBtnEnable.left = rcBtnEnable.right-200; rcBtnEnable.bottom = rcShow.bottom-10; rcBtnEnable.top = rcBtnEnable.bottom-25; GetDlgItem(IDC_BTN_ENABLE)->MoveWindow( rcBtnEnable ); int W = int( float(rcShow.Width()-60)/2 ); CRect rcBig1; rcBig1.left = rcShow.left+20; rcBig1.right = rcBig1.left + W; rcBig1.top = rcShow.top+40; rcBig1.bottom = rcBtnEnable.top-20; GetDlgItem(IDC_STATIC5)->MoveWindow( rcBig1 ); CRect rcBig2; rcBig2.right = rcShow.right-20; rcBig2.left = rcBig2.right-W; rcBig2.top = rcShow.top+40; rcBig2.bottom = rcBtnEnable.top-20; GetDlgItem(IDC_STATIC6)->MoveWindow( rcBig2 ); // CRect rcBtnSingle2; rcBtnSingle2.left = rcBig1.left+rcBig1.Width()/2-15; rcBtnSingle2.right = rcBtnSingle2.left+30; rcBtnSingle2.top = rcBig1.top+100; rcBtnSingle2.bottom = rcBtnSingle2.top+30; GetDlgItem(IDC_BTN_SEL_SINGLE2)->MoveWindow( rcBtnSingle2 ); CRect rcBtnAll2; rcBtnAll2.left = rcBtnSingle2.left; rcBtnAll2.right = rcBtnSingle2.right; rcBtnAll2.top = rcBtnSingle2.bottom+2; rcBtnAll2.bottom = rcBtnAll2.top+30; GetDlgItem(IDC_BTN_SEL_ALL2)->MoveWindow( rcBtnAll2 ); CRect rcBtnNotSingle2; rcBtnNotSingle2.left = rcBtnSingle2.left; rcBtnNotSingle2.right = rcBtnSingle2.right; rcBtnNotSingle2.top = rcBtnAll2.bottom+2; rcBtnNotSingle2.bottom = rcBtnNotSingle2.top+30; GetDlgItem(IDC_BTN_REVERSE_SEL_SINGLE2)->MoveWindow( rcBtnNotSingle2 ); CRect rcBtnNotAll2; rcBtnNotAll2.left = rcBtnSingle2.left; rcBtnNotAll2.right = rcBtnSingle2.right; rcBtnNotAll2.top = rcBtnNotSingle2.bottom+2; rcBtnNotAll2.bottom = rcBtnNotAll2.top+30; GetDlgItem(IDC_BTN_REVERSE_SEL_ALL2)->MoveWindow( rcBtnNotAll2 ); CRect rcListSrc2; rcListSrc2.left = rcBig1.left; rcListSrc2.right = rcBtnSingle2.left; rcListSrc2.top = rcBig1.top+6; rcListSrc2.bottom = rcBig1.bottom-2; GetDlgItem(IDC_LIST_SRC2)->MoveWindow( rcListSrc2 ); CRect rcListDes2; rcListDes2.left = rcBtnSingle2.right; rcListDes2.right = rcBig1.right; rcListDes2.top = rcBig1.top+6; rcListDes2.bottom = rcBig1.bottom-2; GetDlgItem(IDC_LIST_DEST2)->MoveWindow( rcListDes2 ); // CRect rcBtnSingle; rcBtnSingle.left = rcBig2.left+rcBig2.Width()/2-15; rcBtnSingle.right = rcBtnSingle.left+30; rcBtnSingle.top = rcBig2.top+100; rcBtnSingle.bottom = rcBtnSingle.top+30; GetDlgItem(IDC_BTN_SEL_SINGLE)->MoveWindow( rcBtnSingle ); CRect rcBtnAll; rcBtnAll.left = rcBtnSingle.left; rcBtnAll.right = rcBtnSingle.right; rcBtnAll.top = rcBtnSingle.bottom+2; rcBtnAll.bottom = rcBtnAll.top+30; GetDlgItem(IDC_BTN_SEL_ALL)->MoveWindow( rcBtnAll ); CRect rcBtnNotSingle; rcBtnNotSingle.left = rcBtnSingle.left; rcBtnNotSingle.right = rcBtnSingle.right; rcBtnNotSingle.top = rcBtnAll.bottom+2; rcBtnNotSingle.bottom = rcBtnNotSingle.top+30; GetDlgItem(IDC_BTN_REVERSE_SEL_SINGLE)->MoveWindow( rcBtnNotSingle ); CRect rcBtnNotAll; rcBtnNotAll.left = rcBtnSingle.left; rcBtnNotAll.right = rcBtnSingle.right; rcBtnNotAll.top = rcBtnNotSingle.bottom+2; rcBtnNotAll.bottom = rcBtnNotAll.top+30; GetDlgItem(IDC_BTN_REVERSE_SEL_ALL)->MoveWindow( rcBtnNotAll ); CRect rcListSrc; rcListSrc.left = rcBig2.left; rcListSrc.right = rcBtnSingle.left; rcListSrc.top = rcBig2.top+6; rcListSrc.bottom = rcBig2.bottom-2; GetDlgItem(IDC_LIST_SRC)->MoveWindow( rcListSrc ); CRect rcListDes; rcListDes.left = rcBtnSingle.right; rcListDes.right = rcBig2.right; rcListDes.top = rcBig2.top+6; rcListDes.bottom = rcBig2.bottom-2; GetDlgItem(IDC_LIST_DEST)->MoveWindow( rcListDes ); CRect rcSta3; rcSta3.left = rcListSrc2.left; rcSta3.right = rcSta3.left + 75; rcSta3.bottom = rcListSrc2.top-2; rcSta3.top = rcSta3.bottom-15; GetDlgItem(IDC_STATIC3)->MoveWindow( rcSta3 ); CRect rcSta4; rcSta4.left = rcListDes2.left; rcSta4.right = rcSta4.left + 75; rcSta4.bottom = rcListDes2.top-2; rcSta4.top = rcSta4.bottom-15; GetDlgItem(IDC_STATIC4)->MoveWindow( rcSta4 ); CRect rcSta1; rcSta1.left = rcListSrc.left; rcSta1.right = rcSta1.left + 75; rcSta1.bottom = rcListSrc.top-2; rcSta1.top = rcSta1.bottom-15; GetDlgItem(IDC_STATIC1)->MoveWindow( rcSta1 ); CRect rcSta2; rcSta2.left = rcListDes.left; rcSta2.right = rcSta2.left + 75; rcSta2.bottom = rcListDes.top-2; rcSta2.top = rcSta2.bottom-15; GetDlgItem(IDC_STATIC2)->MoveWindow( rcSta2 ); } void CDlg_Permit::OnBnClickedBtnSelSingle() { CString str; int nCount, i, nIndex = 0; CArray arrayListSel; nCount = m_ListBox_UserSrc.GetSelCount(); arrayListSel.SetSize( nCount ); m_ListBox_UserSrc.GetSelItems( nCount, arrayListSel.GetData() ); for( i = 0; i < nCount; i++ ) { m_ListBox_UserSrc.GetText( arrayListSel[i] - nIndex, str ); m_ListBox_UserSrc.DeleteString( arrayListSel[i] - nIndex ); m_ListBox_UserSrc.SetSel( arrayListSel[i] - nIndex, FALSE ); m_ListBox_UserDes.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnSelAll() { CString str; int i, nCount, nIndex = 0; nCount = m_ListBox_UserSrc.GetCount(); for( i = 0; i < nCount; i++ ) { m_ListBox_UserSrc.GetText( i - nIndex, str ); m_ListBox_UserSrc.DeleteString( i - nIndex ); m_ListBox_UserDes.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnReverseSelSingle() { CString str; int nCount, i, nIndex = 0; CArray arrayListSel; nCount = m_ListBox_UserDes.GetSelCount(); arrayListSel.SetSize( nCount ); m_ListBox_UserDes.GetSelItems( nCount, arrayListSel.GetData() ); for( i = 0; i < nCount; i++ ) { m_ListBox_UserDes.GetText( arrayListSel[i] - nIndex, str ); m_ListBox_UserDes.DeleteString( arrayListSel[i] - nIndex ); m_ListBox_UserDes.SetSel( arrayListSel[i] - nIndex, FALSE ); m_ListBox_UserSrc.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnReverseSelAll() { CString str; int i, nCount, nIndex = 0; nCount = m_ListBox_UserDes.GetCount(); for( i = 0; i < nCount; i++ ) { m_ListBox_UserDes.GetText( i - nIndex, str ); m_ListBox_UserDes.DeleteString( i - nIndex ); m_ListBox_UserSrc.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnSelSingle2() { CString str; int nCount, i, nIndex = 0; CArray arrayListSel; nCount = m_ListBox_DoorScr.GetSelCount(); arrayListSel.SetSize( nCount ); m_ListBox_DoorScr.GetSelItems( nCount, arrayListSel.GetData() ); for( i = 0; i < nCount; i++ ) { m_ListBox_DoorScr.GetText( arrayListSel[i] - nIndex, str ); m_ListBox_DoorScr.DeleteString( arrayListSel[i] - nIndex ); m_ListBox_DoorScr.SetSel( arrayListSel[i] - nIndex, FALSE ); m_ListBox_DoorDes.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnSelAll2() { CString str; int i, nCount, nIndex = 0; nCount = m_ListBox_DoorScr.GetCount(); for( i = 0; i < nCount; i++ ) { m_ListBox_DoorScr.GetText( i - nIndex, str ); m_ListBox_DoorScr.DeleteString( i - nIndex ); m_ListBox_DoorDes.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnReverseSelSingle2() { CString str; int nCount, i, nIndex = 0; CArray arrayListSel; nCount = m_ListBox_DoorDes.GetSelCount(); arrayListSel.SetSize( nCount ); m_ListBox_DoorDes.GetSelItems( nCount, arrayListSel.GetData() ); for( i = 0; i < nCount; i++ ) { m_ListBox_DoorDes.GetText( arrayListSel[i] - nIndex, str ); m_ListBox_DoorDes.DeleteString( arrayListSel[i] - nIndex ); m_ListBox_DoorDes.SetSel( arrayListSel[i] - nIndex, FALSE ); m_ListBox_DoorScr.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnReverseSelAll2() { CString str; int i, nCount, nIndex = 0; nCount = m_ListBox_DoorDes.GetCount(); for( i = 0; i < nCount; i++ ) { m_ListBox_DoorDes.GetText( i - nIndex, str ); m_ListBox_DoorDes.DeleteString( i - nIndex ); m_ListBox_DoorScr.AddString( str ); nIndex++; } } void CDlg_Permit::OnBnClickedBtnEnable() { //初始化卡与门的对应 for( int nControllerIndex=0;nControllerIndex=0 && g_Controller[nControllerIndex].sName==m_sCurrentControlName ) { for( int m=1;m<9;m++ ) g_Controller[nControllerIndex].Card2Door[m].nCardCount = 0; break; } } CString str; int nUserCount = m_ListBox_UserDes.GetCount(); int nDoorCount = m_ListBox_DoorDes.GetCount(); //int nDoorIndex=0; //CString sControllerName,sDoorName; //for( int i = 0; i < nDoorCount; i++ ) //{ // //m_ListBox_DoorDes.GetText( i, str ); // //sDoorName = str; // for( int nControllerIndex=0;nControllerIndex=0 && g_Controller[nControllerIndex].sName==m_sCurrentControlName ) // { // //if( g_Controller[nControllerIndex].sDoor[1]==sDoorName ) // nDoorIndex = 1; // //else if( g_Controller[nControllerIndex].sDoor[2]==sDoorName ) // // nDoorIndex = 2; // //else if( g_Controller[nControllerIndex].sDoor[3]==sDoorName ) // // nDoorIndex = 3; // //else if( g_Controller[nControllerIndex].sDoor[4]==sDoorName ) // // nDoorIndex = 4; // for( int nUserIndex = 0; nUserIndex < nUserCount; nUserIndex++ ) // { // m_ListBox_UserDes.GetText( nUserIndex, str ); // long lCardNumber=0; // CString sClass,sJobNumber,sRemarks; // g_GetCardInfoByUserName( str,lCardNumber,sClass,sJobNumber,sRemarks ); // g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardNum[g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardCount] = lCardNumber; // g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardCount++; // } // break; // } // } //} ////排序卡号 //int nC2DSize=0; //for( int nControllerIndex=0;nControllerIndex=0 && g_Controller[nControllerIndex].sName==m_sCurrentControlName ) // { // for( int nDoorIndex=1;nDoorIndex<9;nDoorIndex++ ) // { // int nCardCount = g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardCount; // if( nCardCount>0 ) // { // for( int i=0;ig_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardNum[k] ) // { // long temp; // temp = g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardNum[i]; // g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardNum[i] = g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardNum[k]; // g_Controller[nControllerIndex].Card2Door[nDoorIndex].nCardNum[k] = temp; // } // } // } // } // } // break; // } //} //提交权限 g_Controller[nControllerIndex].nOperterType = OPERATE_Permit; g_pDlgMain->m_pThread_Controller[nControllerIndex]->m_Controller = g_Controller[nControllerIndex]; //ADOCtrl.DelPermitByControlName( m_sCurrentControlName ); //CString sUser,sDoor; //for( int nUserIndex = 0; nUserIndex < nUserCount; nUserIndex++ ) //{ // m_ListBox_UserDes.GetText( nUserIndex, sUser ); // for( int nDoorIndex = 0; nDoorIndex < nDoorCount; nDoorIndex++ ) // { // //m_ListBox_DoorDes.GetText( nDoorIndex, sDoor ); // ADOCtrl.InsertPermit( m_sCurrentControlName,sUser,"",2 ); // } //} //MessageBox( g_strSendPermitOK, g_strTip, MB_ICONINFORMATION); } void CDlg_Permit::OnBnClickedBtnDisable() { // TODO: 在此添加控件通知处理程序代码 } HBRUSH CDlg_Permit::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: 在此更改 DC 的任何属性 int nID = pWnd->GetDlgCtrlID(); //HBRUSH B1 = CreateSolidBrush( g_ColorGround ); HBRUSH B1 = CreateSolidBrush( g_Color3 ); if(nID == IDC_STA_SHOW) { // pOldFont = pDC->SelectObject(&m_font1); pDC->SetTextColor(RGB( 255,0,0)); pDC->SetBkMode( TRANSPARENT ); //pDC->SelectObject(pOldFont); DeleteObject(B1); return B1; } if(nCtlColor == CTLCOLOR_STATIC) { // pOldFont = pDC->SelectObject(&m_font1); pDC->SetTextColor(RGB(0, 0, 0)); pDC->SetBkMode( TRANSPARENT ); //pDC->SelectObject(pOldFont); DeleteObject(B1); return B1; } DeleteObject(B1); // TODO: 如果默认的不是所需画笔,则返回另一个画笔 return hbr; } BOOL CDlg_Permit::OnEraseBkgnd(CDC* pDC) { CBrush br1; CRect rect; GetWindowRect(&rect); ScreenToClient(&rect); br1.CreateSolidBrush(g_Color3); pDC->FillRect(rect,&br1); DeleteObject( br1 ); return TRUE; //return CDialog::OnEraseBkgnd(pDC); } void CDlg_Permit::OnBnClickedBtnChoosedate() { // TODO: 在此添加控件通知处理程序代码 } void CDlg_Permit::OnNMDblclkTreeDoor(NMHDR *pNMHDR, LRESULT *pResult) { // TODO: 在此添加控件通知处理程序代码 HTREEITEM hSelectedItem = m_Tree_Door.GetSelectedItem(); HTREEITEM hParent = m_Tree_Door.GetParentItem( hSelectedItem ); int nGroupID = 0; CString str; if( hParent && m_hCurretItem!=hSelectedItem ) { str = m_Tree_Door.GetItemText( hSelectedItem ); m_sSta_Show = str; m_sCurrentControlName = str; m_hCurretItem = hSelectedItem; UpdateData( false ); //* ADOCtrl.ReadPermit( str,&m_ListBox_DoorDes,&m_ListBox_UserDes ); //* ADOCtrl.ReadUserCanChoose( &m_ListBox_UserSrc,&m_ListBox_UserDes ); //* ADOCtrl.ReadDoorCanChoose( str,&m_ListBox_DoorScr,&m_ListBox_DoorDes ); bool bFlag=false; for( int i=0;im_pThread_Controller[i] ) { if( !g_pDlgMain->m_pThread_Controller[i]->m_bExitFinish && g_pDlgMain->m_pThread_Controller[i]->m_Controller.sName==str) { bFlag = true; break; } } } if( bFlag ) m_Btn_SendPermit.EnableWindow( true ); else m_Btn_SendPermit.EnableWindow( false ); } *pResult = 0; }