将CDialog转换为CPropertyPage

时间:2015-04-30 11:58:39

标签: c++ mfc

我在我的项目中使用了一个编码示例。现在我有问题,在示例中他们使用CDialog类,但我需要一个CProperyPage类。如何从CDialog转换为CPropertypage? 这是我的代码:

.cpp File:
CNativeCallerDlg::CNativeCallerDlg(CWnd* pParent /*=NULL*/)
    : CPropertyPage(CNativeCallerDlg::IDD, pParent)
{
    //m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

.h File:
// CNativeCallerDlg dialog
class CNativeCallerDlg : public CPropertyPage
{
// Construction
public:
    CNativeCallerDlg(CWnd* pParent = NULL); // standard constructor
    enum { IDD = 102 };
}

原件:

.cpp
CNativeCallerDlg::CNativeCallerDlg(CWnd* pParent /*=NULL*/)
    : CDialog(CNativeCallerDlg::IDD, pParent)
{
    m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

.h
class CNativeCallerDlg : public CDialog
{
// Construction
public:
    CNativeCallerDlg(CWnd* pParent = NULL); // standard constructor
    enum { IDD = 102 };
}

正如您所看到的,我的代码无法使用CPropertyPage(CNativeCallerDlg :: IDD,pParent),因为这种输入没有任何功能。

我是否仍然可以使用CDialog(CNativeCallerDlg :: IDD,pParent)并将其转换为CPropertyPage?

由于

1 个答案:

答案 0 :(得分:1)

这应该有效:

CNativeCallerDlg::CNativeCallerDlg(CWnd* pParent /*=NULL*/)
    : CPropertyPage(CNativeCallerDlg::IDD)
{
 ...
}