📄 mytab.cpp
字号:
// MyTab.cpp : implementation file
//
#include "stdafx.h"
#include "SalaryManagement.h"
#include "MyTab.h"
#include "BasicInfo.h"
#include "FamilyMember.h"
#include "Experience.h"
#include "RewardPunish.h"
#include "Kaoqintongji.h"
#include "Chuchai.h"
#include "Chuqin.h"
#include "Jiaban.h"
#include "Qingjia.h"
#include "Xiujia.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CMyTab
CMyTab::CMyTab()
{
index=0;
}
CMyTab::~CMyTab()
{
for(int i=0;i<m_CountOfPages;i++)
delete m_tabPages[i];
}
BEGIN_MESSAGE_MAP(CMyTab, CTabCtrl)
//{{AFX_MSG_MAP(CMyTab)
ON_WM_LBUTTONDOWN()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMyTab message handlers
void CMyTab::InitTabCtrl()
{
::ZeroMemory(&m_tabPages,sizeof(m_tabPages));
//在人事信息管理中使用Tab控件
if(index==0)
{
m_tabPages[0]=new CBasicInfo;
m_tabPages[1]=new CFamilyMember;
m_tabPages[2]=new CExperience;
m_tabPages[3]=new CRewardPunish;
m_CountOfPages=4;
m_tabPages[0]->Create(IDD_BASICINFO,this);
m_tabPages[1]->Create(IDD_FAMILYMEMBER,this);
m_tabPages[2]->Create(IDD_EXPERIENCE,this);
m_tabPages[3]->Create(IDD_REWARDPUNISH,this);
}
//在考勤信息管理中使用Tab控件
if(index==1)
{
m_tabPages[0]=new CKaoqintongji;
m_tabPages[1]=new CChuchai;
m_tabPages[2]=new CChuqin;
m_tabPages[3]=new CJiaban;
m_tabPages[4]=new CQingjia;
m_tabPages[5]=new CXiujia;
m_CountOfPages=6;
m_tabPages[0]->Create(IDD_KAOQINTONGJI,this);
m_tabPages[1]->Create(IDD_KCHUCHAI,this);
m_tabPages[2]->Create(IDD_KCHUQIN,this);
m_tabPages[3]->Create(IDD_KJIABAN,this);
m_tabPages[4]->Create(IDD_KQINGJIA,this);
m_tabPages[5]->Create(IDD_KXIUJIA,this);
m_tabPages[4]->ShowWindow(SW_HIDE);
m_tabPages[5]->ShowWindow(SW_HIDE);
}
m_tabCurrent=0;
m_tabPages[0]->ShowWindow(SW_SHOW);
m_tabPages[1]->ShowWindow(SW_HIDE);
m_tabPages[2]->ShowWindow(SW_HIDE);
m_tabPages[3]->ShowWindow(SW_HIDE);
SetRetangle();
}
void CMyTab::SetRetangle()
{
CRect tabRect,itemRect;
int x,y,cx,cy;
GetClientRect(&tabRect);
GetItemRect(0,&itemRect);
x=itemRect.left;
y=itemRect.bottom-1;
cx=tabRect.right-itemRect.left-1;
cy=tabRect.bottom-y-1;
m_tabPages[0]->SetWindowPos(&wndTop,x,y,cx,cy,SW_SHOW);
for(int i=1;i<m_CountOfPages;i++)
m_tabPages[i]->SetWindowPos(&wndTop,x,y,cx,cy,SW_HIDE);
}
void CMyTab::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
CTabCtrl::OnLButtonDown(nFlags, point);
OnChangePage(GetCurFocus());
}
void CMyTab::OnChangePage(int nItem)
{
if(m_tabCurrent!=nItem)
{
m_tabPages[m_tabCurrent]->ShowWindow(SW_HIDE);
m_tabCurrent=nItem;
m_tabPages[m_tabCurrent]->ShowWindow(SW_SHOW);
m_tabPages[m_tabCurrent]->SetFocus();
SetCurSel(nItem);
}
}
void CMyTab::SetIndex(int index)
{
this->index=index;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -