| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- // ItemTree.cpp : 实现文件
- //
- #include "stdafx.h"
- #include "../Resource.h"
- #include "ItemTab.h"
- // CItemTree
- IMPLEMENT_DYNAMIC(CItemTab, CTabCtrl)
- CItemTab::CItemTab()
- {
- m_count = 0;
- }
- CItemTab::~CItemTab()
- {
- }
- void CItemTab::__translate(TAB_INDEX _index,CString& Data)
- {
- switch(_index)
- {
- case TAB_AGENT:
- Data = _T("座席状态");
- break;
- case TAB_CALL:
- Data = _T("呼叫状态");
- break;
- default:
- Data = _T("error");
- break;
- }
- }
- void CItemTab::addItem(CDialog* _wnd, int _idd)
- {
- CString _data = _T("");
- __translate((TAB_INDEX)m_count, _data);
- InsertItem(m_count, _data);
- if(_wnd->m_hWnd != INVALID_HANDLE_VALUE)
- _wnd->Create(_idd, this);
- m_itemList[m_count] = _wnd;
- //设置页面的位置在m_tab控件范围内
- CRect rs;
- GetClientRect(rs);
- rs.top += 22;
- rs.bottom -= 4;
- rs.left += 8;
- rs.right -= 4;
- _wnd->SetWindowPos(this, 0, 0, rs.Width(), rs.Height(), SWP_HIDEWINDOW);
- _wnd->MoveWindow(rs);
- if(m_count == 0)
- {
- _wnd->ShowWindow(TRUE);
- SetCurSel(0);
- }
- m_count++;
- }
- BEGIN_MESSAGE_MAP(CItemTab, CTabCtrl)
- ON_NOTIFY_REFLECT(TCN_SELCHANGE, &CItemTab::OnTcnSelchange)
- END_MESSAGE_MAP()
- // CItemTree 消息处理程序
- void CItemTab::OnTcnSelchange(NMHDR *pNMHDR, LRESULT *pResult)
- {
- // TODO: 在此添加控件通知处理程序代码
- std::map<int,CDialog*>::iterator _iter;
- int _curSel = GetCurSel();
- for (_iter = m_itemList.begin();_iter != m_itemList.end(); _iter++)
- {
- if (_iter-> first == _curSel)
- {
- _iter->second->ShowWindow(SW_SHOW);
- }
- else
- {
- _iter->second->ShowWindow(SW_HIDE);
- }
- }
- *pResult = 0;
- }
|