如下代码:
        p_child1->Create(IDD_DIALOG2,GetDlgItem(IDC_TAB1));             //关联子对话框
p_child2->Create(IDD_DIALOG3,GetDlgItem(IDC_TAB1));
CRect rect;
m_ptab.GetClientRect(&rect);              //获取tab控件的显示区域
rect.top+=23;                             //经本人测试,该top如果不处理tab控件上的标签页将会被覆盖,进行加的时候子对话框的显示区域的最上端将向下移动,为什么会这样?常理来说不是应该使用减法的吗?
rect.bottom-=4;                    //该处向中心区域-4了
rect.left+=4;                      //该处向中心区域-4了
rect.right-=6;                     //该处也向中心-6了
p_child1->MoveWindow(&rect);
p_child1->ShowWindow(SW_SHOW);
p_child2->MoveWindow(&rect);
p_child2->ShowWindow(SW_HIDE);请注意注释,好奇怪为什么top+是减,buttom-是减,left+也是减,right-还是减?
是否是别的确认标准呢,忘告知!
谢谢!!!!!

解决方案 »

  1.   

    rect.top+=23; 
    rect.bottom-=4; //该处向中心区域-4了
    rect.left+=4; //该处向中心区域-4了
    rect.right-=6; //该处也向中心-6了
    这几句话,是使得对话框显示区域比tab页稍微小一点,这样的显示效果会比较的好
      

  2.   

    你这是Tab控件吗? p_child1你这个好像是直接用的对话框吧  貌似 该用属性页的 
      

  3.   

    我好好想了一下,应该是这样的,top表示的是窗体坐标底部,button表示的是窗体坐标的顶部(按坐标的大小算)!