我创建的CTabCtrl为什么显示不出来?
具体创建过程很简单,就是在CChildFrame中添加了一个CTabCtrl的成员变量,然后在CChildFrame的OnCreate函数中创建它,
然后我紧跟着插入了两个元素,具体见下面的代码:
    
int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
   
    if (CMDIChildWnd::OnCreate(lpCreateStruct) == -1)
        return -1;    // TODO:  Add your specialized creation code here    if(!m_tab.Create(TCS_BOTTOM|WS_CHILD | WS_VISIBLE  ,CRect(0,0,0,0),this,AFX_IDW_PANE_FIRST))
        return false;
       TCITEM tcItem1,tcItem2;
    tcItem1.mask = TCIF_TEXT;
    tcItem1.pszText = _T("Tab #1");    tcItem2.mask = TCIF_TEXT;
    tcItem2.pszText = _T("Tab #2");    m_tab.InsertItem(0, &tcItem1);
    m_tab.InsertItem(1,&tcItem2);    m_status.Create(this);       
  
    return 0;
}
理论上tab是可以显示出来的,但就是不显示,这是为什么?请高手指教!!

解决方案 »

  1.   

    m_status.Create(this);  //有可能不是this指针.
    或者缺少ShowWindow()???
      

  2.   

    是不是你给设置的显示区域的问题,你弄个CRect( 0, 0, 200, 200 ) 试试
      

  3.   

    二位所说我都考虑到了,不是这些的问题.当我点击运行之后,能弹出MDI界面,子框架也存在,但子框里只有VIEW和STATUS BAR,就是没有TAB,我又在ONSIZE中修改了VIEW的显示,然后当我改变子框架大小之后,TAB就能正常的显示出来,但无法在刚运行之后就显示出来.大家有没有遇到这问题的,帮一帮....
      

  4.   

    我在对话框类里试过,用MSDN给的代码就可以得到正常的结果
      

  5.   

    对话框中应该可以的,因为对话框中少了CVIEW,我面对的问题是CVIEW在一开始就显示在CTAB的上面,所以才无法显示。对了,关于控件的显示顺序,大家有没有一些好的方法呢?
      

  6.   

    是被view挡住了,你的view和tabctrl要共存么?
    要么不创建view,要么把view创建到tabctrl里,要么在view上面创建tabctrl