分享

MFC在父对话框中嵌入子对话框

 行走在理想边缘 2016-08-25
  • 一、对话框中显示对话框的方法:  
  • 1、首先创建要在对话框里显示的那个对话框,命名为:IDD_Dialog_Status。  
  • 设置这个对话框的属性:  
  • 1)、“Style”选择“Child”;中文版“样式”选择“下层”。  
  • 2)、“Border”为“None”;中文版“边框”选择“无”。  
  •    
  • 2、为了显示时能够准确定位,我们可以在主对话框中要显示对话框的地方放入一个Pic控件,命名为:IDC_STATUS,Visible属性去掉。  
  •    
  • 3、创建需要嵌入的对话框对话框  
  •  StatusBar     *m_StatusBar;
  •  m_StatusBar = new StatusBar(this);
     m_StatusBar->Create(IDD_DIALOG_StatusBar);//创建状态栏   
  • 4、移动pic控件到指定地方以及显示对话框
  • SystemParametersInfo(SPI_GETWORKAREA, 0, &rect, 0);
  •  if (rect.Width() <= 1024)
      MoveWindow(rect);
     else
     {
      rect.top = 0;
      rect.left = 0;
      rect.bottom = 768 - 30; //GetTaskbarHeight();
      rect.right = 1024;
      MoveWindow(rect);//把主对话框移动到这个位置
      CenterWindow();//居中显示
     }
     if (GetDlgItem(IDC_STATUS))//得到状态栏图片控件
     {
      rect1.top = rect.bottom - 25;
      rect1.left = rect.left + 8;
      rect1.right = rect.right - 8;
      rect1.bottom = rect1.top + 20;
      GetDlgItem(IDC_STATUS)->MoveWindow(rect1);//把图片控件移动到这个位置
      if (m_StatusBar){
       m_StatusBar->MoveWindow(&rect1);
       m_StatusBar->ShowWindow(SW_SHOW);
       m_StatusBar->UpdateWindow();
      }
     }
    • 本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
      转藏 分享 献花(0

      0条评论

      发表

      请遵守用户 评论公约

      类似文章 更多