如何从外部把数据传到派生自CPropertyPage的类中?

lizifong 2005-08-26 04:06:01
// pageregular.h
//...
class CPageRegular : public CPropertyPage
{
DECLARE_DYNCREATE(CPageRegular)

// Construction
public:
CPageRegular(CString strInfo); // !!
CString m_strInfo; // !!
//...

// pageregular.cpp
CPageRegular::CPageRegular(CString strInfo) : CPropertyPage(CPageRegular::IDD)
{
//{{AFX_DATA_INIT(CPageRegular)
//}}AFX_DATA_INIT
m_strInfo = strInfo;
}


// call.cpp

void Cxxx:OnProperty()
{
CPageRegular page1("D:\\abc.cpp"); // 编译指出找不到相关的构造函数?

CPropertySheet sheet("属性");
sheet.AddPage(&page1);

sheet.DoModal();

}
如果用 m_psp.lParam 该如何做?
...全文
50 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lizifong 2005-08-26
我是想在一个自定义的属性页中显示一个数据表的属性,要把这个表的名称(strTable)传过去,可以不知道为什么这样构造却不行.
回复
lizifong 2005-08-26
头文件包含了的
回复
oyljerry 2005-08-26
定义了对应的构造函数了啊,楼主是否包含了头文件
回复
goodboyws 2005-08-26
刚才没细看代码,感觉楼主的做法也不应该有问题,不过
最好改为
CPageRegular(LPCTSTR strInfo);
或者
CPageRegular(const CString& strInfo);
回复
快乐鹦鹉 2005-08-26
怎么可能呢。没发现有什么问题哦。
Cxxx有没有包含page的头文件阿?
不如发到happyparrot@126.com
回复
goodboyws 2005-08-26
这样就可以
CHAR* pStr = new CHAR[255];
strcpy(pStr, ("D:\\abc.cpp");
CPageRegular page1;
page1.m_psp.lParam = (LPARAM)pStr;
CPropertySheet sheet("属性");
sheet.AddPage(&page1);

sheet.DoModal();
回复
相关推荐
发帖
界面
创建于2007-09-28

1.5w+

社区成员

VC/MFC 界面
申请成为版主
帖子事件
创建了帖子
2005-08-26 04:06
社区公告
暂无公告