15,979
社区成员
发帖
与我相关
我的任务
分享
void CProtocolAnalysisSystemDlg::ShowTabWindow(CTabCtrl &m_tab)
{
int pos=0;
pos=m_tab.GetCurSel();
TCITEM TabCtrlItem;
// CString pszText=_T(""); // 原来的代码 pszText 分配的地址空间不够,后面写越界了
CString pszText=_T("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
TabCtrlItem.mask=TCIF_TEXT|TCIF_PARAM;
TabCtrlItem.pszText=(LPTSTR)(LPCSTR)pszText;
TabCtrlItem.cchTextMax=1024;
for (int i=0; i<m_tab.GetItemCount(); i++)
{
m_tab.GetItem(i,&TabCtrlItem);
if (i!=pos)
{
GetDlgItem(TabCtrlItem.lParam)->ShowWindow(SW_HIDE);
}
else
{
GetDlgItem(TabCtrlItem.lParam)->ShowWindow(SW_SHOW);
CString stateText=_T("当前状态: ");
CListCtrl* pList;
int packetNum=0;
CString packetInf=_T("数据包数目: ");
CString packetTmp=_T("");
stateText+=TabCtrlItem.pszText;
m_statusBar.SetText(stateText, 0, 0);
pList=(CListCtrl*)(GetDlgItem(TabCtrlItem.lParam));
packetNum=pList->GetItemCount();
packetTmp.Format("%d", packetNum);
packetInf+=packetTmp;
m_statusBar.SetText(packetInf, 1, 0);
}
}
AssignItem();
}