VC之TAB控件实例
1.在主面板上拖放一Tab Control控件,我们这里建立其在主面板类(CTabSampleDlg)里面的成员变量m_tab。
2.添加两个子对话框,将其属性设置为“child,none”。这里要注意了,添加的必须是继承自DIALOG类的对话框,而不是PropPage对话框,否则的话,子面板将不能响应用户操作。然后生成两个新类“CTabPage1,
CTabPage2”。
3.为CTabSampleDlg类添加两个成员变量,他们分别是CTabPage1和CTabPage2类的实例。
4.在CTabSampleDlg类的OnInitDialog成员函数内的适当位置添加如下代码。
BOOL CTabSampleDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// Add "About..." menu item to system menu.
// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING,IDM_ABOUTBOX, strAboutMenu);
}
}
// Set the icon for this dialog. The work does thisautomatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
//==========================================================
//初始化TAB
m_tab.InsertItem(0, L"第一页");
m_tab.InsertItem(1, L"第二页");//到这里只是添加了两个tab页
CRect rec;
m_tab.GetClientRect(&rec);//获得TAB控件的坐标
//定位选项卡页的位置,这里可以根据情况自己调节偏移量
rec.bottom -= 1;
rec.left += 1;
rec.top += 20;
rec.right -= 2;
//创建子页面
//m_page1,m_page2在对话框类头文件中定义(需添加新建两类的头文件)
m_page1.Create(IDD_DIALOG1, GetDlgItem(IDC_TAB));
m_page2.Create(IDD_DIALOG2, GetDlgItem(IDC_TAB));
//将子页面移动到指定的位置
m_page1.MoveWindow(&rec);
m_page2.MoveWindow(&rec);
//显示子页面
m_page1.ShowWindow(SW_SHOW);
m_page2.ShowWindow(SW_HIDE);
//===============================================================
return TRUE; // return TRUE unless you set the focus to acontrol
}
5.为主面板上的TabControl控件添加
OnSelchangeTab事件,添加代码如下。
void CTabSampleDlg::OnSelchangeTab(NMHDR* pNMHDR, LRESULT*pResult)
{
// TODO: Add your control notification handler code here
switch(m_tab.GetCurSel())
{
case 0:
m_page1.ShowWindow(SW_SHOW);
m_page2.ShowWindow(SW_HIDE);
break;
case 1:
m_page1.ShowWindow(SW_HIDE);
m_page2.ShowWindow(SW_SHOW);
break;
default:
break;
}
*pResult = 0;
}
源代码在我的资源里可供下载
http://download.csdn.net/detail/windows_nt/4437586
======================================
分享到:
相关推荐
vc漂亮的tab控件实例 里面有注释 可运行 vc漂亮的tab控件实例
默认情况下Tab控件有两个选项卡,本例中需要4个选项卡,分别用来放置“时域波形图”、“谱分析”、“直方图”、“参数设置”。选项卡的添加方法为,右键控件,选择“在后面添加选项卡/在前面添加选项卡”,添加完成...
本人自己使用c语言写windows程序总结的一个小例子,用兴趣的可以去看下http://blog.csdn.net/zhouzechun/article/details/8002415 配合这个例子来看,希望可以帮助大家来学习c写windows程序
一个关于TAB控件的简单程序实例,介绍了如何使用TAB控件,适合新手。——MFC中Tab控件可以使多个对话框有效地进行分页。
根据网上一篇文章做的 tab的基本实现都有
VB Vista风格的窗体TAB控件及实例,一个用纯VB代码编写的ctl控件,在VB下使用方便,这个窗体风格有点像Office2007,TAB选项卡也很漂亮的,现在TAB在WEB开发或WinForm中都已相当普遍,用好了TAB会提升软件操作体验,...
本实例简单好用,充分展示了TabControl控件的用法
tab控件的应用实例,为本人学习过程中的习作,不足之处,请多包涵。
主要介绍了Android Tab 控件详解及实例的相关资料,需要的朋友可以参考下
自己拿这个例子研究了一天,才会用Tab控件,希望你也好好研究一番!!
适用于VB的 ucXTab.ctl窗口选项卡控件实例,也可称为是窗体“标签”吧,用这种TAB可实现多功能的窗体,可在多个TAB间切换窗体内容,目前来说,也是比较主流的一种窗体设计布局风格,ucXTab.ctl控件生成的每个TAB,都...
一个关于TABS组件的EXT实例,帮助大家学习TAB控件和JS语言。。。
Android ScrollableTabHost tab控件,辅助类库、实际项目框架参考、比赛练习案例,学习实例,开箱即用。适用于实际项目开发参考、教学案例、毕业设计、出书项目实例、学生面试前能力提升、开发辅助。
用VC6.0单文档程序实现了窗口创建,停靠等功能,绝对不会让你失望的
MFC 下使用Tab control控件的实例
学习tab,tabhost的朋友们,这是一个挺漂亮的tab,tabhost的源码实例,可以下载下来装在自己的eclipse上学习哦。
新手绝佳参考.....MFC中操作Tab页控件是相当困难的。不过有了该控件,一切都变的简单了。控件源码+应用实例!
原tab控件,仿360开关控件版权归原作者! VB控件背景透明代码来自:新浪 “玄雨清风”的博客 感谢以上两位源代码作者 链接:http://pan.baidu.com/s/1hrAEXqG 密码:nfhc '-----------------------以下是转自...
android开发实例,非常好的Tab实例,很多人开发android入门阶段时,需要用到Tab控件,不可多得.