And*_*nko 5 mfc compare cdialog visual-c++
CDialog和CDialogEx有什么区别?我决定使用CDialog,因为如果Dlg是从CDialogEx派生的,则无法将m_pMainWnd分配给Dlg。
BOOL CPreparationApp::InitInstance()
{
MyClass2 Dlg; //derived from CDialog
m_pMainWnd = &Dlg;
Dlg.DoModal();
return TRUE;
}
Run Code Online (Sandbox Code Playgroud)
通过不使用表单向导提供的CDialogEx,我可能会遇到什么样的问题?
如何分配从CDialogEx派生的m_pMainWnd变量?
CDialogEX是从CDialog派生的,因此,将m_pMainWnd设置为CDialogEx派生的对象应该不会有问题。CDialogEx提供了设置对话框的背景色或图像的能力。
CDialogEX用于设置背景颜色,对话框上的背景图像。如果要设置背景图像或颜色,则您的类将从CDialogEX派生,但是请记住,如果使用CDialaogEX,则应使用该类的方法,例如CreateEX ,如果您尝试从CDilaogEX派生类并使用CDialog方法,则将出现错误。
| 归档时间: |
|
| 查看次数: |
7962 次 |
| 最近记录: |