zoukankan      html  css  js  c++  java
  • C++的TAB 控件自己的使用笔记

            第一次接触到TAB控件还要自己建几个窗口然后在进行置父窗口操作.为了防止已后自己忘记特做了这个笔记.因为是初学者,如果您看到了问题请告知我,我会非常的感谢您的.....

          步骤:

                      1.建一个TAB控件.

                      2.建几个窗口.

                      3.设置TAB的分页标题

    	//----------设置TAB的标题-----------
    	m_tabmain.InsertItem(1,"1测试");
    	m_tabmain.InsertItem(2,"2测试");
    	m_tabmain.InsertItem(3,"3测试");
    	m_tabmain.InsertItem(4,"4测试");
    	m_tabmain.InsertItem(5,"5测试");
              

                      创建页面窗口

    	//-------创建页面窗口-----------------------
    	page1.Create(IDD_PAG1,GetDlgItem(IDC_TAB1));
    	page2.Create(IDD_PAG2,GetDlgItem(IDC_TAB1));
    	page3.Create(IDD_PAG3,GetDlgItem(IDC_TAB1));
    	page4.Create(IDD_PAG4,GetDlgItem(IDC_TAB1));
    	page5.Create(IDD_PAG5,GetDlgItem(IDC_TAB1));


                        置父窗口

    	//--------置父窗口-------------------------
    	page1.SetParent(GetDlgItem(IDC_TAB1));
    	page2.SetParent(GetDlgItem(IDC_TAB1));
    	page3.SetParent(GetDlgItem(IDC_TAB1));
    	page4.SetParent(GetDlgItem(IDC_TAB1));
    	page5.SetParent(GetDlgItem(IDC_TAB1));


                       定义窗口大小

    	//-----定义窗口大小------------------
    	RECT r1;
    	r1.left=1;
    	r1.top=22;
    	r1.bottom=300;
    	 r1.right=500;


                        置窗口位置

    	//-----设置窗口位置------------------------
    	 page1.MoveWindow(&r1);
    	 page2.MoveWindow(&r1);
    	 page3.MoveWindow(&r1);
    	 page4.MoveWindow(&r1);
    	 page5.MoveWindow(&r1);

                          //---------默认显示page1                     page1.ShowWindow(TRUE);

                       选项卡的单击事件

    void CMyGameWgDlg::OnSelchangeTab1(NMHDR* pNMHDR, LRESULT* pResult) //选项卡的单击事件
    {
    	// TODO: Add your control notification handler code here
    	switch(m_tabmain.GetCurSel())//获取鼠标单击的选项卡.
    	{
    	case 0:
    		{
    			page1.ShowWindow(TRUE);//显示鼠标单击的选项卡对应窗口.
    			page2.ShowWindow(FALSE);
    			page3.ShowWindow(FALSE);
    			page4.ShowWindow(FALSE);
    			page5.ShowWindow(FALSE);
    			break;
    		}
    	case 1:
    		{
    			page1.ShowWindow(FALSE);
    			page2.ShowWindow(TRUE);
    			page3.ShowWindow(FALSE);
    			page4.ShowWindow(FALSE);
    			page5.ShowWindow(FALSE);
    			break;
    		}
    	case 2:
    		{
    			page1.ShowWindow(FALSE);
    			page2.ShowWindow(FALSE);
    			page3.ShowWindow(TRUE);
    			page4.ShowWindow(FALSE);
    			page5.ShowWindow(FALSE);
    			break;
    		}
    	case 3:
    		{
    			page1.ShowWindow(FALSE);
    			page2.ShowWindow(FALSE);
    			page3.ShowWindow(FALSE);
    			page4.ShowWindow(TRUE);
    			page5.ShowWindow(FALSE);
    			break;
    		}
    	case 4:
    		{
    			page1.ShowWindow(FALSE);
    			page2.ShowWindow(FALSE);
    			page3.ShowWindow(FALSE);
    			page4.ShowWindow(FALSE);
    			page5.ShowWindow(TRUE);			
    			break;
    		}
    	}
    	*pResult = 0;//清空被选单击选项卡的值,没该语句的话会不正常.
    
    }


    纯属个人笔记,,初学者理解错误难免,如果您发现了,请告诉我..谢谢您的帮助!!
                     

  • 相关阅读:
    简单工厂模式实例
    浅析面向对象和面向过程
    equals与“==”的区别
    IIS挂起网站配置文件地址
    先安装win7时IIS的安装
    验证码的使用
    c#引用命名空间的作用
    ADO与ADO.NET的区别
    常用的数据库访问方式
    Exercise 11: Asking Questions
  • 原文地址:https://www.cnblogs.com/fanghui/p/2774284.html
Copyright © 2011-2022 走看看