怎样在CMyDlgDlg类中声明CModallessDlg类的指针m_pModallessDlg,并初始化
请说明具体声明位置。
请说明具体声明位置。
解决方案 »
- 指针,数组,有点混乱了
- 才从c转到c++,怎么会这样?
- 关于OnTimer(UINT nIDEvent)问题!
- 我用MFC的active x 控件,在对话框中点出的datagrip控件可以直接选择allowfocus属性,看了一下他的类的函数,没看出来可以设置这个属性的函数。
- 我动态在toobar添加的button,如何加tooltip?AddTool只能加资源中已有的字符串吧?
- 紧急求救关于VC2003中对话框上调用CCombobox控件的GetComboBoxInfo和定义COMBOBOXINFO结构变量时提示没有声明和定义的问题
- 请教crecordset,,有的是分。
- 为什么win32窗口每次启动位置会不同?
- 在CView中添加ToolTip问题
- 每象素四字节的CMYK颜色的象素, 如何转换为每象素三字节的RGB 颜色
- 两个Oracle数据库,字符集不一样,怎样在这之间传递数据而不产生乱码?
- VC++基础老手进来解答,新手进来学习
{
CModallessDlg * m_pModallessDlg;
}不是这样吗?是否你没有定义头文件阿。
class CMyDlgDlg
{
CModallessDlg * m_pModallessDlg;
}
CModallessDlg * m_pModallessDlg;
在OnInitDialog()中赋值
pModallessDlg = new CModallessDlg();
CMenu* pSysMenu = GetSystemMenu(FALSE);用new就不用初始化吗
代码如下:
void CMyDlgDlg::OnShowModalless()
{
// TODO: Add your control notification handler code here
if(!m_pModallessDlg) //测试无模式对话框是否被销毁
{ //如果没有无模式对话框的指针,则创建一个
m_pModallessDlg=new CModallessDlg(this);
if(m_pModallessDlg->Create(IDD_MODALLESS_DIALOG,NULL)==TRUE)
GetDlgItem(IDC_BMODALLESS)->EnableWindow(FALSE);
}
m_pModallessDlg->ShowWindow(SW_SHOW);
/* CModallessDlg dlg;
dlg.DoModal();*/
}
include "CModallessDlg.h";class CMyDlgDlg
{
// 指针定义
CModallessDlg * m_pModallessDlg = null;
}那么在你的CMyDlgDlg::OnShowModalless()就可以用 if(!m_pModallessDlg)了
第一次访问OnShowModalless函数时,由于初始值为NULL,所以将会构建一个新的CModallessDlg 对象PS: if(!m_pModallessDlg) 改为 if(m_pModallessDlg == NULL)会清晰些
Compiling...
ModallessDlg.cpp
e:\我的程序\mfc\mydlg\mydlgdlg.h(40) : error C2252: 'm_pModallessDlg' : pure specifier can only be specified for functions
MyDlg.cpp
e:\我的程序\mfc\mydlg\mydlgdlg.h(40) : error C2252: 'm_pModallessDlg' : pure specifier can only be specified for functions
MyDlgDlg.cpp
e:\我的程序\mfc\mydlg\mydlgdlg.h(40) : error C2252: 'm_pModallessDlg' : pure specifier can only be specified for functions
E:\我的程序\MFC\MyDlg\MyDlgDlg.cpp(186) : error C2065: 'm_pModallessDlg' : undeclared identifier
E:\我的程序\MFC\MyDlg\MyDlgDlg.cpp(188) : error C2440: '=' : cannot convert from 'class CModallessDlg *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
E:\我的程序\MFC\MyDlg\MyDlgDlg.cpp(189) : error C2227: left of '->Create' must point to class/struct/union
E:\我的程序\MFC\MyDlg\MyDlgDlg.cpp(192) : error C2227: left of '->ShowWindow' must point to class/struct/union
Generating Code...
Error executing cl.exe.MyDlg.exe - 7 error(s), 0 warning(s)是怎么回事?我按照greenery(greenery)的方法做了,本来一个错误也没的
--->
CModallessDlg * m_pModallessDlg;不要初始化~