当前位置: 代码迷 >> WinCE >> 做一个登陆界面出现的有关问题
  详细解决方案

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

热度:66   发布时间:2016-04-28 13:28:05.0
做一个登陆界面出现的问题
做一个登陆界面,输入一个四位的密码,若密码错误,就弹出错误消息

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{}里面应该怎么生命些什么东西么?

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


------解决方案--------------------
" '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);
建议你先学一下怎么创建对话框类和使用类进行操作。


  相关解决方案