PLM之家PLMHome-工业软件与AI结合践行者

[资料] MFC 在父对话框中内嵌子对话框

[复制链接]

2017-8-31 13:30:49 2693 0

admin 发表于 2017-8-31 13:30:49 |阅读模式

admin 楼主

2017-8-31 13:30:49

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
8 i- u$ g9 B8 y
一、对话框中显示对话框的方法:  $ z7 O4 X; u3 l" N# C$ z( g
1、首先创建要在对话框里显示的那个对话框,命名为:IDD_INNER。  7 f2 |  U) W/ g+ |3 T6 V& L( C
设置这个对话框的属性:  
, S& b+ T/ t: ]0 i6 {9 }1)、“Style”选择“Child”;中文版“样式”选择“下层”。  . n( y( M% y' ]" H
2)、“Border”为“None”;中文版“边框”选择“无”。  * v3 E( C& [" V5 E# a+ t6 D
3 z2 x" t6 [. d( J: C  h
2、为了显示时能够准确定位,我们可以在右边要显示对话框的地方放入一个Pic控件,命名为:IDC_STATIC_RECT,Visible属性去掉。  # g0 F! ^5 `+ j. f) B

* t4 I. Y# ?# K, `4 A3、得到Pic控件客户区坐标  
# H: L4 f4 g0 H3 O  {4 G" A//CDlgParent.cpp ——OnInitDialog()  9 {$ B4 M5 e, a8 W" W; y
CRect rect;  5 `0 y+ ?4 S( K  L6 a7 B. Z
GetDlgItem(IDC_STATIC_RECT)-> GetWindowRect(&rect);  
2 m: C+ K5 [  p, tScreenToClient(&rect);   //千万注意别用成ClientToScreen(&rect);  " r+ T1 p; ]/ d# ]3 ^$ i1 w1 q, p

" X# g$ d/ i. X4 X* H; G5 I. \4、创建并显示对话框  
' @4 T" l+ T/ l% a方式一:  
3 E$ j) \% f/ x//CDlgParent.h  
% H. w3 ~. c" z9 z  |CDialog m_InnerDlg;  9 Q; ]3 t" b( I! C- N5 W
//CDlgParent.cpp——OnInitDialog()  3 _2 Z" h% O+ i$ T% O1 o
m_InnerDlg.Create(IDD_INNER, this);  / [- A) [" ~$ l! g4 |/ ?  ~
m_InnerDlg.MoveWindow(rect);  
" \7 W. \7 e: n* _2 w( dm_InnerDlg.ShowWindow( SW_SHOW );  
  X, K; q$ B6 n8 B9 s% _0 j8 c& c; L: d1 S
方式二:  
7 N) X0 K1 _( A# J6 W//CDlgParent.h  + }& u: C0 I2 D0 U. Z
CDialog *m_pInnerDlg;  1 V4 v( [, p  X

: L4 b% r# R! T# n//CDlgParent.cpp——OnInitDialog()  
9 r% p) A+ f  R- _. L# Km_pInnerDlg = new CDialog();  0 a( D- W+ R& `  o6 J5 D8 {( B# N1 n
m_pInnerDlg->Create(IDD_INNER, this);  4 x2 I( P/ |! [1 {2 H: Y" e; q
m_pInnerDlg->MoveWindow(rect.left, rect.top, rect.Width(), rect.Height());  
$ {5 T" S. J) g; xm_pInnerDlg->ShowWindow( SW_SHOW );  
& ^( [8 H& a% K3 A# P- J7 d+ R3 e) {) Q7 e" P8 D

2 ]0 Z% Q0 R8 M0 R
" L: }; Z8 N  C& H
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了