网站大量收购闲置独家精品文档,联系QQ:2885784924

CTabcontrol的使用.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CTabcontrol的使用

在基于对话框窗口中使用CTabCtrl 写在前面: 笔者之前用的大都是BCB的编译器,因为BCB提供了很多比VS容易使用的控件,让你花较少的时间在界面设计上。今天突然想用VS2008修改BCB的程序,单单界面设计就用了我大把时间,上网查了资料还有MSDN,现在把如何使用Tab Control的使用方法写下来供大家参考。 在对话框资源上添加一个 Tab Control 控件 ID 为 IDC _TAB1 ,然后为其添加成员变量 m_tab ,类型为 CTabCtrl,添加的方法如下,右击添加到窗体内的Tab Control控件,弹出选单: 图1. 添加成员变量 需要几个选项卡,则在对话框资源添加几个对话框,在这里只演示两个选项卡,则要添加两个对话框。其 ID 分别为 IDD_TAB_DIALOG1 , IDD_TAB_DIALOG1 它们的属性 style 为 Child, Border 为 None ,其他的再根据自己调整。然后分别为其添加对应的基于 CDialog 类 CTabPage1 ,CTabPage2 图2. 添加对话框 图3. 为对话框添加类 3.在主对话框头文件include子对话框头文件,然后再添加三个成员变量,为子对话框添加实例。在主对话框代码OnInitDialog()中初始化 Tab Control 控件并显示: 修改后tabTestDlg.h头文件如下(红色部分为修改部分): // tabTestDlg.h : header file // #pragma once #include afxcmn.h #include CTabPage1.h #include CTabPage2.h // CtabTestDlg dialog class CtabTestDlg : public CDialog { // Construction public: CtabTestDlg(CWnd* pParent = NULL); // standard constructor //这里省略没必要修改的代码 public: CTabCtrl m_tab; CTabPage1 page1; CTabPage2 page2; }; 在主对话框实现代码CTabTestDlg.cpp中修改OnInitDialog()函数(红色为修改部分): BOOL CCTabTestDlg::OnInitDialog() { CDialog::OnInitDialog(); //为Tab添加page m_tab.InsertItem(0,_T(page1)); m_tab.InsertItem(1,_T(page2)); //page窗口创建 page1.Create(IDD_TAB_DIALOG1,GetDlgItem(IDC_TAB1)); page2.Create(IDD_TAB_DIALOG2,GetDlgItem(IDC_TAB1)); //获得IDC_TAB1客户区大小 CRect rs; m_tab.GetClientRect(rs); //下面要根据实际修改调整子对话框在父窗口中的位置,不然会显示出错 rs.top+=25; rs.bottom-=60; rs.left+=1; rs.right-=10; page1.MoveWindow(rs); page2.MoveWindow(rs); //分别设置隐藏和显示 page1.ShowWindow(true); page 2.ShowWindow(false); //设置默认的选项卡 m_tab.SetCurSel(0); // Add About... menu item to system menu. //这里省略没必要修改的代码 return TRUE; // return TRUE unless you set the focus to a control } 接下来对Ctabctrl时间进行处理,主要是OnTcnSelchangeTab1事件。 双击Ctabctrl控件,VS会自动生成OnTcnSelchangeTab1事件处理函数,我们只要带改函数下添加要执行的代码就行了。 函数修改如下: void CcomDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult) { // TODO: Add your control notification han

文档评论(0)

liudao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档