、首先创建一个MFC对话框框架,在对话框资源上从工具箱中添加上一个Tab Control 控件,
根据需要修改一下属性,然后右击控件,为这个控件添加一个变量,将此控件跟一个CTabCtrl
类变量绑定在一起,这里设为m_tabctrl2、创建一个新的对话框资源,比如insert菜单选择new form,其属性作如下修改:
Border:none //边界为空,这样它就没了标题栏
Style :Child // 这样这个模板就可以当作另一个窗口的子窗口了。
其他默认即可在上面加一些控件什么的,具体操作跟普通对话框没有区别。
完成后从这个对话框模板生成一个新的对话框类。
//这一步他说创建一个新的对话框类,我把基类不管是设为CDialog还是CPropertyPage后面引起的问题还是一样//3、在主对话框中为新添加进来的类增加一个变量:
如:CDialog m_mm1;//我直接从主对话框的add member variable添加的4、在主对话框的OnInitDialog()函数中添加如下类似的代码:
TCITEM item;
item.mask = TCIF_TEXT;
item.pszText = "第一页";//标题
m_tabctrl.InsertItem (0,&item);//插入一页
m_mm1.Create (IDD_MY_DIALOG,&m_tabctrl);
CRect r;
m_tabctrl.GetClientRect (&r);//获得区域
m_mm1.SetWindowPos (NULL,10,30,r.right -20,r.bottom -40,SWP_SHOWWINDOW);//确保显示在page页面中
……
//我的问题:
根据这个文章,我成功的在我的tabctrl控件的第一个page里显示了我所新创建的对话框IDD_MY_DIALOG的内容,但是随后我发现:这个对话框的所有事件全不响应,例如,我的新创建的对话框有个按钮,他的单击事件是:MessageBox("OK");我点击后,全无反应,这是什么原因啊?所有的控件皆是如此,晕了!!还有一个相关联的问题就是,我的工程新加入了窗体,这个窗体显示后,上面的控件也是全无反应,望各位高手不吝赐教,小弟不胜感激!!!(请说的详细一些啊)//

解决方案 »

  1.   


    不至于吧,你新加的窗口是不是放到TabPage里面的?直接DoModal显示也不响应吗?
      

  2.   

    命名了,其实就是在TabPage中添加控件,不能控制,如添加按扭,单击没有任何反映
      

  3.   

    我的工程是一个串口收发数据的程序,我用的是serialport类,主对话框界面中有用到tab分页,从而有了两个新的对话框类,方法与楼主一致,该对话框上有若干按钮、复选框等控件,通过点击等操作,调用serialport类的writetoport函数发送数据,但是出错,报错说writetoport为定义。我又定义了一个指向父窗口的指针,仍然不行!!好恼火哦!哭老
      

  4.   

    LZ太不厚道了,搞清楚状况也不说下,我也遇到这种情况了,请LZ现身啊