标题:请赐教!对话框创建问题,
只看楼主
taijitu520
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-11-18
 问题点数:0 回复次数:5 
请赐教!对话框创建问题,
CShowImage *dlg;                                //构造对象
dlg = new CShowImage();            //开辟空间
flag = dlg->Create(IDD_DIALOG,NULL);        //创建窗口

w为什么在调试的情况下,调用vc下的函数 BOOL CDialog::Create(LPCTSTR lpszTemplateName, CWnd* pParentWnd)
时,lpszTemplateName 为什么总是为空????

请赐教!!!谢谢!!!
搜索更多相关主题的帖子: BOOL CDialog Create 
2008-11-20 16:57
zacom
Rank: 2
等 级:论坛游民
威 望:2
帖 子:381
专家分:15
注 册:2007-9-15
得分:0 
IDD_DIALOG是ID,不是字符。。你把他换为MAKEINTRESOURCE(IDD_DIALOG),看看

没有最好只有更好
2008-11-20 22:40
taijitu520
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-11-18
得分:0 
Thank you all the same

MAKEINTRESOURCE(IDD_DIALOG)
这种方式我也尝试过,但是也是不行!
2008-11-21 09:05
沼泽
Rank: 4
等 级:业余侠客
威 望:8
帖 子:291
专家分:228
注 册:2008-9-15
得分:0 
有两种形式的
BOOL Create( LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL );

BOOL Create( UINT nIDTemplate, CWnd* pParentWnd = NULL );

Return Value

Both forms return nonzero if dialog-box creation and initialization were successful; otherwise 0.
你用ID好调用的应该是第二种形式

CShowImage *dlg;                                //构造对象
dlg = new CShowImage();            //开辟空间
flag = dlg->Create(IDD_DIALOG,NULL);        //创建窗口
dlg->ShowWindow(SW_NORMAL); //显示窗口
2008-11-21 09:45
taijitu520
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-11-18
得分:0 
我的这个问题是:
从动态库中调用对话框,
原因可能是,在测试程序中
Create(IDD_DIALOG,NULL)函数去寻找 IDD_DIALOG
是在测试程序中寻找,而我的IDD_DIALOG是放在
动态库中的。 Create 找不到 IDD_DIALOG 而返回一个 0。
2008-11-21 12:01
taijitu520
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-11-18
得分:0 
我的这个问题是:
从动态库中创建(不是调用)对话框,
原因可能是,在测试程序中
Create(IDD_DIALOG,NULL)函数去寻找 IDD_DIALOG
是在测试程序中寻找,而我的IDD_DIALOG是放在
动态库中的。 Create 找不到 IDD_DIALOG 而返回一个 0。
2008-11-21 12:02



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-245402-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.767063 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved