用以下语句在对话条中使用Tab Contrl控件,为何出现错误TCITEM tcItem1;
tcItem1.mask = TCIF_TEXT;
tcItem1.pszText = _T("Tab #1"); m_Tab.InsertItem(0,&tcItem1);
TCITEM tcItem2;
tcItem2.mask = TCIF_TEXT;
tcItem2.pszText = _T("Tab #2"); m_Tab.InsertItem(1, &tcItem2);
m_Tab.SetCurSel(0);
GetDlgItem(IDC_BUTTON1)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_BUTTON2)->ShowWindow(SW_HIDE);
请大家指点,谢谢!

解决方案 »

  1.   

    tcItem1.pszText = _T("Tab #1");
    这种写法不知道会有什么问题,
    我一般这么用strcpy(tcItem1.pszText,"Tab #1");
      

  2.   

    参考:
    //初始化m_tab控件
    m_tab.InsertItem(0,"Template");
    m_tab.InsertItem(1,"Gradient");
    m_tab.InsertItem(2," Browser");

    //初始化建立属性页各页
    page0.Create(IDD_Page1,GetDlgItem(IDC_TAB));
    page1.Create(IDD_Page2,GetDlgItem(IDC_TAB));
    page2.Create(IDD_Page3,GetDlgItem(IDC_TAB));

    //设置页面的位置在m_tab控件范围内
    CRect rs;
    m_tab.GetClientRect(rs);
    rs.top += 40;
    rs.bottom -= 4;
    rs.left += 4;
    rs.right -= 4;

    page0.MoveWindow(rs);
    page1.MoveWindow(rs);
    page2.MoveWindow(rs);

    m_tab.SetCurSel(0);
    page0.ShowWindow(TRUE);
    page1.ShowWindow(FALSE);
    page2.ShowWindow(FALSE);
      

  3.   

    在对话条中,没有OninitDialogL()函数,因为继承CDialogBar类.tab控件是否必须有CDialog::OninitDialogL()才能执行.没有的话如何解决
      

  4.   

    好像是没有问题,不过你所创建的tab上没有任何东西。
    楼住是继承的CDialogBar,会不会是CDialogBar的问题?不了解