CDialog to CWnd

本文介绍了一种将类从CDialog继承转换为CWnd继承的方法,包括删除构造函数参数、移除DoDataExchange函数及修改基类引用等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

新建一个类时,想让该类继承CWnd,但却没有CWnd,可以先继承CDialog再对代码做如下修改。

 

构造函数中的参数都删掉,cpp中构造函数的 : CWnd(CXXXXX::IDD, pParent)也删掉

删掉DoDataExchange函数

其它的就把CDialog改为CWnd,如:

IMPLEMENT_DYNAMIC(CTexturePreview, CDialog)

BEGIN_MESSAGE_MAP(CTexturePreview, CDialog)

class _XTP_EXT_CLASS CXTPPropertySheet : public CDialog是这样写的 //----------------------------------------------------------------------- // Summary: // Displays a modeless property sheet. // Parameters: // pParentWnd - Points to parent window. If NULL, parent is the desktop. // dwStyle - Window styles for property sheet // dwExStyle - Extended window styles for property sheet // Remarks: // The default style, expressed by passing -1 as dwStyle, is actually // WS_SYSMENU | WS_POPUP | WS_CAPTION | DS_MODALFRAME | DS_CONTEXT_HELP | WS_VISIBLE. // // To display a modal property sheet, call DoModal instead. // See Also: // CXTPPropertySheet::DoModal //----------------------------------------------------------------------- BOOL Create(CWnd* pParentWnd = NULL, DWORD dwStyle = (DWORD)-1, DWORD dwExStyle = 0); using CDialog::Create; #if (1200 < _MSC_VER) using CWnd::Create; #endif BOOL CXTPPropertySheet::Create(CWnd* pParentWnd, DWORD dwStyle, DWORD dwExStyle) { if (dwStyle == (DWORD)-1) { dwStyle = DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_CLIPCHILDREN | WS_CLIPSIBLINGS; // Wizards don't have WS_SYSMENU. if (!IsWizard()) dwStyle |= WS_SYSMENU; } if (m_bResizable) { dwStyle |= WS_THICKFRAME; } m_lpDlgTemplate->style = dwStyle; m_lpDlgTemplate->dwExtendedStyle = dwExStyle; m_bModeless = TRUE; m_psh.dwFlags |= (PSH_MODELESS|PSH_USECALLBACK); return CDialog::CreateDlgIndirect(m_lpDlgTemplate, pParentWnd, NULL); } 那么 class CRuoHaiPropertySheet : public CPropertySheet的Create应该怎么写
最新发布
06-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值