_选择夹2


新建2个资源Dialog  Border设为None, Style设为Child

双击空白处,添加类  类名改为 tab1,tab2



// TODO:  在此添加额外的初始化代码


//插入选择夹表头

选择夹1.InsertItem(0, _T("基本资料"),0);

选择夹1.InsertItem(1, _T("学历信息"),1);

选择夹1.InsertItem(2, _T("工作经验"),2);

选择夹1.SetCurSel(1);//现行选中项;


//创建并显示 子夹,并指定父窗口为选择夹

子夹1.Create(IDD_TAB1_1, &选择夹1);

子夹2.Create(IDD_TAB1_2, &选择夹1);

子夹1.ShowWindow(SW_HIDE);

子夹2.ShowWindow(SW_SHOW);


//调整子夹大小

CRect 矩形;

选择夹1.GetClientRect(矩形);

矩形.DeflateRect(10, 50, 10, 10);//把矩形这个变量缩小一点 然后在赋值给子夹

子夹1.MoveWindow(矩形);

子夹2.MoveWindow(矩形);


下面两个变量需要添加到主窗口类里面去.跟选择夹1 放在一起即可

tab1 子夹1;

tab2 子夹2;




然后添加TCN_SELCHANGE 事件:


void CcodeDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult)

{

// TODO:  在此添加控件通知处理程序代码

int 现行子夹 = 选择夹1.GetCurSel();


switch (现行子夹)

{

case 0:

子夹1.ShowWindow(SW_SHOW);

子夹2.ShowWindow(SW_HIDE);

break;

case 1:

子夹1.ShowWindow(SW_HIDE);

子夹2.ShowWindow(SW_SHOW);

break;

default:

break;

}

*pResult = 0;

}








CTabCtrl类成员函数(红色为虚函数)

Create 创建控件并将其附加给CTabCtrl对象

SetlmageList 指定一个图象列表到控件

GetCurSel 获取当前选定的选项

SetCurSel 选择在选项卡控件的一个选项

GetltemCount 获取选项卡数量

SetToolTips 分配工具提示控件到选项卡控件

SetMinTabWidth 设置项目的最小宽度

SetltemSize 设置项目的宽度和高度

lnsertltem 插入新选项卡在选项卡控件

Drawltem 当自绘制控件的可视部分改变时被调用


CTabCtrl类创建

virtual BOOL Create(

DWORD dwStyle,//样式

const RECT& rect,//控件位置

cWnd* pParentWnd,//父窗口

UINT nID//按钮ID

);

dwStyle:指定控件的风格:

TCS_BUTTONS:外观为按钮风格,且整个控件周围没有边框。

TCS_FIXEDWIDTH:所有标签具有相同的宽度。

TCS_MULTILINE:标签以多行显示,如果需要,可以显示所有标签。

TCS_SINGLELINE∶只显示一行标签,用户可以滚动着看其他标签。

TCS_TABS:标签以普通标签样式显示,且整个控件周围有边框。


除了上述风格的组合外,一般还要指定WS_CHILD和WS_VISIBLE风格。