如何创建选项卡控件是根据您在对话框中使用控件还是在无对话框窗口中创建它。。
在对话框直接使用 CTabCtrl
在对话框编辑器中,将添加选项卡控件添加到对话框模板资源。 指定其控件的ID .
使用 添加成员变量向导添加带有控件属性CTabCtrl 类型的成员变量。 可以使用此成员调用 CTabCtrl 成员函数。
需要处理任何选项卡控件通知消息的对话框类的映射处理函数。 有关更多信息,请参见将消息映射到函数。
在 OnInitDialog,设置 CTabCtrl的样式。
在非对话框窗口使用 CTabCtrl
在视图或窗口类中定义控件。
(如果要把控件子类化),请在父窗口OnCreate 处理程序函数调用时,调用控件的Create 成员函数,在 OnInitialUpdate中。 设置控件的样式。
在创建 CTabCtrl 对象之后,可以设置或清除以下扩展样式:
TCS_EX_FLATSEPARATORS 选项卡控件绘制选项卡项之间的分隔符。 此扩展样式仅影响具有 TCS_BUTTONS 和 TCS_FLATBUTTONS 样式的选项卡控件。 默认情况下,创建 TCS_FLATBUTTONS 样式的选项卡控件来设置此扩展样式。
TCS_EX_REGISTERDROP 选项卡控件生成 TCN_GETOBJECT通知消息,当一个对象被拖在选项卡中的项目控件时,请求放置目标对象。
备注
希望接收 TCN_GETOBJECT 通知,必须初始化调用AfxOleInit的 OLE 库。
创建控件后,这些样式可以被检索和设置,调用GetExtendedStyle SetExtendedStyle 成员函数。
例如,按下列代码行的样式设置TCS_EX_FLATSEPARATORS:
DWORD dwExStyle= m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle | TCS_EX_FLATSEPARATORS);
从下列代码行的 CTabCtrl对象中清除TCS_EX_FLATSEPARATORS 样式:
DWORD dwExStyle= m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle & ~TCS_EX_FLATSEPARATORS);
这将删除位于 CTabCtrl 对象的按钮之间的分隔符。