做一个登陆界面出现的问题

bbc664   2007-7-25 10:05 楼主
做一个登陆界面,输入一个四位的密码,若密码错误,就弹出错误消息

class CPASSWORDDlg : public CDialog
{}
然后函数
BOOL CPASSWORDApp::InitInstance()
{
        CPASSWORDDlg dlg;
        m_pMainWnd = &dlg;
        int nResponse = dlg.DoModal();
        if (nResponse == IDOK)
        {
                // TODO: Place code here to handle when the dialog is
                //  dismissed with OK
                if(dlg.m_Password!=1925)
                {
                        MessageBox(NULL,"p1","p2",MB_OK|MB_ICONERROR);
                        return FALSE;
                }
        }
        else if (nResponse == IDCANCEL)
        {
                // TODO: Place code here to handle when the dialog is
                //  dismissed with Cancel
        }
        ////////////////////
        AfxEnableControlContainer();
return FALSE;

}
会弹出两个错误
一个是:error C2039: 'm_Password' : is not a member of 'CPASSWORDDlg'
确实,在些Dlg.之后没有提示m_Password
还有一个是:error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'char [3]' to 'const unsigned short *'
是不是应该把MessageBox换成AfxMessageBox
还有,class CPASSWORDDlg : public CDialog{}里面应该怎么生命些什么东西么?

我的问题可能比较弱,但还是希望各位帮帮帮忙啦,谢谢,超级谢谢:)

回复评论 (5)

"'m_Password' : is not a member of 'CPASSWORDDlg'",需要在CPASSWORDDlg中添加m_Password属性,然后取得用户输入的内容并保存到m_Password中,“if(dlg.m_Password!=1925)”改成if(dlg.m_Password!="1925");
"MessageBox(NULL,"p1","p2",MB_OK|MB_ICONERROR)"改成MessageBox("p1","p2",MB_OK|MB_ICONERROR)或者AfxMessageBox("p1","p2",MB_OK|MB_ICONERROR);
建议你先学一下怎么创建对话框类和使用类进行操作。


点赞  2007-7-25 10:24
谢谢JamesXing!!!我C++不太会,关于怎么在CPASSWORDDlg中添加m_Password属性不会,能否给我代码?   谢谢啦
点赞  2007-7-25 10:36
点赞  2007-7-25 10:42
拜托楼上,不要晕噢    我刚学C++  写代码写不太明白    所以啦  帮帮忙   
点赞  2007-7-25 10:44
你先看看SDK中的例子程序或者创建一个MFC的Hello World程序,看看如何创建对话框和对应的对话框类
点赞  2007-7-25 10:59
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复