我在一个DIALOG1中加入了一个table控件。然后在DIALOG1的OnInitDialog中添加了如下语句: m_tabmain.InsertItem(0,"AAAA");
m_tabmain.InsertItem(1,"BBBB");
m_tabmain.InsertItem(2,"CCCC");
m_tabmain.InsertItem(3,"DDDD");
m_tabmain.InsertItem(4,"EEEE");
m_tabmain.InsertItem(5,"FFFF"); ppage1.Create(IDD_DIALOG1);
ppage2.Create(IDD_DIALOG2);
ppage3.Create(IDD_DIALOG3);
ppage4.Create(IDD_DIALOG4);
ppage5.Create(IDD_DIALOG5);
ppage6.Create(IDD_DIALOG6);
    

ppage1.SetParent(GetDlgItem(IDC_TABMAIN));
ppage2.SetParent(GetDlgItem(IDC_TABMAIN));
ppage3.SetParent(GetDlgItem(IDC_TABMAIN));
ppage4.SetParent(GetDlgItem(IDC_TABMAIN));
ppage5.SetParent(GetDlgItem(IDC_TABMAIN));
ppage6.SetParent(GetDlgItem(IDC_TABMAIN)); RECT r1; r1.bottom=370;
r1.left=2;
r1.right=663;
r1.top=21; ppage1.MoveWindow(&r1);
ppage2.MoveWindow(&r1);
ppage3.MoveWindow(&r1);
ppage4.MoveWindow(&r1);
ppage5.MoveWindow(&r1);
ppage6.MoveWindow(&r1); ppage1.ShowWindow(true);
这样可以成功的在这个对话框中显示5页的table页面。
然后,我想在page4上。在用这样一个相同的方法。添加另外一个table控件。
也用这种方法。在page4的oninitdialog的消息事件中添加类似代码。
编译。无错。显示的时候。page4中的table控件不显示。请问这是什么原因呢?page4中的那几个分页,设置父窗口我设置的是page4这个页面。不懂。求指教。

解决方案 »

  1.   

    http://www.codeproject.com/KB/tabs/ctabctrlssl.aspx
      

  2.   

    2楼你回答的那个帖子对我没用我已经创建了第一层的table 了。我要在table的分页的DIALGO上在创建table创建不上了。
    刚才发现。在table分页的DIALOG上创建一个listview也不行。但是能再这些DIALOG上创建简单的按钮,combobox。listbox之类的控件。
      

  3.   

    问题出在ppage4中的TAB创建语句在什么地方,跟踪一下是否被执行了.
      

  4.   


    找到问题了。我是将这个tab控件放到了一个静态框里面了。拿出来就没事了
      

  5.   


    别着急啊,我还没结贴如果我就是想在静态框里加个tab控件呢?再就是静态框里面为什么能添加edit,button 等这些控件。。不能添加tab呢?还有一个问题,不知道您能回答吗?DLL中,创建一个dialog,然后调用这个DLL,可以弹出这个dialog,但是如果我再dialog上,拖一个listview控件上去。那么,在调用DLL的时候。这个dialog就无法弹出来了。请问这是为何呢?