VC中的Tab控件使用

简介:

VC中的Tab控件调用与VB、C++buider有点不一样。在VB或C++builder中,添加标签的时候,同时创建了页面窗口。在VC中,添加页标签时,要自己创建无边框窗口,嵌入到Tab控件中。步骤如下:

1、在主窗口上,放上Tab控件,并创建关联变量m_tab

2、在资源中,创建两个无边框窗口,创建相应的窗体类Dlg_page1,Dlg_Page2,这两个类分别继承于CDialogEx或CDialog类。

      窗口属性为:Border:None,Style:Child

3、在主窗口中包含dlgpage1.h、dlgpage2.h头件,添加成员变量:

      DlgPage1  m_page1;

      DlgPage2  m_page2;

4、在主窗的启动函数中添加代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
BOOL  DlgThird::OnInitDialog()  
{  
     CDialogEx::OnInitDialog();  
   
     m_tab1.InsertItem(0,_T( "设置" ));  
     m_tab1.InsertItem(1,_T( "权限" ));  
   
     m_page1.Create(IDD_PAGE1,&m_tab1);  
     m_page2.Create(IDD_PAGE2,&m_tab1);  
   
     CRect rs;  
     m_tab1.GetClientRect(&rs);  
     //调整子对话框在父窗口中的位置  
     rs.top += 25;  
     rs.bottom -= 4;  
     rs.left  += 1;  
     rs.right -= 4;  
     //设置子对话框尺寸并移动到指 定位置  
     m_page1.MoveWindow(&rs);  
     m_page2.MoveWindow(&rs);  
       
     m_page1.ShowWindow(SW_SHOW);  
     m_page2.ShowWindow(SW_HIDE);  
       
   
     m_tab1.SetCurSel(0);  
   
     return  TRUE;    
}  
//Tab控件响应鼠标选择消息代码  
void  DlgThird::OnTcnSelchangeTab(NMHDR *pNMHDR,  LRESULT  *pResult)  
{  
     int  CurSel = m_tab1.GetCurSel();  
         CRect rc;  
     m_tab1.GetClientRect(&rc);  
     switch (CurSel)  
     {  
         case  0:  
             m_page1.ShowWindow( true );  
             m_page2.ShowWindow( false );  
   
             break ;  
         case  1:  
             m_page1.ShowWindow( false );  
             m_page2.ShowWindow( true );  
               
             break ;  
         default :  
             ;  
             *pResult = 0;  
     }  
}

'''













本文转自Chinayu201451CTO博客,原文链接:http://blog.51cto.com/9233403/1968321  ,如需转载请自行联系原作者

相关文章
|
5月前
MFC基本控件4-列表框控件List Box
今天和大家分享一下列表框控件的几个使用方法, 有些基本操作比如实例化对象,继承类的创建相信大家都已经灰了, 不会的可以看第一二篇文章。
|
4月前
|
数据安全/隐私保护 容器
[Qt5&控件] 控件stackedWidget、lineEdit等的用法
[Qt5&控件] 控件stackedWidget、lineEdit等的用法
44 0
[Qt5&控件] 控件stackedWidget、lineEdit等的用法
|
C#
WPF,回车即是tab
正在做的WPF项目,客户需要在文本框里输入后按回车即跳到下一个框框,和tab一样的 上网搜索了下解决方案:如下: 在文本框外围 的grid加上KeyDown事件,代码里写上: /// /// 上方的可输入区域,回车替换TAB /// /// /// private void StackPa...
941 0
|
索引
VC MFC工具栏(CToolBar)控件
一、工具栏 工具栏控件在控件面板里没有对应的选项(图标),但有一个工具栏控件类CToolBar,所以我们如果要创建一个工具栏控件并显示在窗口里的话,只能用代码来完成,事实上任何一种控件,都可以用代码创建,如CButton按钮类,现举一个用代码创建按钮控件并显示在窗口里的例子。
2453 0