如何在已做好的一个MFC基于对话框程序中添加一个登录界面?(vc6.0)
如题,太难了,搞半天,网上的教程看不太懂啊。。。希望点击登录后原来的登录界面隐藏,然后出现已经做好的MFC对话框,要如何实现?麻烦每一步都详细说明一下,因为不是很懂C++...
如题,太难了,搞半天,网上的教程看不太懂啊。。。希望点击登录后原来的登录界面隐藏,然后出现已经做好的MFC对话框,要如何实现?麻烦每一步都详细说明一下,因为不是很懂C++还有那... 如题,太难了,搞半天,网上的教程看不太懂啊。。。希望点击登录后原来的登录界面隐藏,然后出现已经做好的MFC对话框,要如何实现?麻烦每一步都详细说明一下,因为不是很懂C++还有那些函数的意义.....用户名还有密码如何设置也不大懂QAQ,麻烦大佬们帮帮忙吧 展开
展开
展开全部
BOOL CLoginApp::InitInstance()
{
//============登录===========
//在主程序窗口运行前首先弹出登录对话框
while (TRUE)
{
maindlg login_Dialog;
//模态对话框
int nReturn = login_Dialog.DoModal();//返回IDOK或IDCANCEL。如果返回的是IDCANCEL,则要调用WindowsCommDlgExtendedError函数来确定是否发生了一个错误。IDOK和IDCANCEL都是常量,它表明用户选择的是OK按钮还是Cancel按钮
if(nReturn == IDCANCEL){//点击取消
return FALSE;
}
if (nReturn == IDOK){//点击确定
HWND login_Hwnd = GetDlgItem(login_Dialog,IDD_DIALOG1);
CString str_User = login_Dialog.m_strUser;
CString str_Password = login_Dialog.m_strPassword;
if(!(str_User == "admin" && str_Password == "admin"))
{ //如果用户名密码不是admin/admin,则报错,提示重新输入,直至正确为止。
if(IDOK == MessageBox(NULL,"用户ID或密码错误!\n 请重新输入!","登录失败!",MB_OKCANCEL|MB_ICONERROR))
continue;
else
return FALSE;
} else
{
break;
}
}
}
AfxEnableControlContainer();
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
。。。。。。。下面省略
{
//============登录===========
//在主程序窗口运行前首先弹出登录对话框
while (TRUE)
{
maindlg login_Dialog;
//模态对话框
int nReturn = login_Dialog.DoModal();//返回IDOK或IDCANCEL。如果返回的是IDCANCEL,则要调用WindowsCommDlgExtendedError函数来确定是否发生了一个错误。IDOK和IDCANCEL都是常量,它表明用户选择的是OK按钮还是Cancel按钮
if(nReturn == IDCANCEL){//点击取消
return FALSE;
}
if (nReturn == IDOK){//点击确定
HWND login_Hwnd = GetDlgItem(login_Dialog,IDD_DIALOG1);
CString str_User = login_Dialog.m_strUser;
CString str_Password = login_Dialog.m_strPassword;
if(!(str_User == "admin" && str_Password == "admin"))
{ //如果用户名密码不是admin/admin,则报错,提示重新输入,直至正确为止。
if(IDOK == MessageBox(NULL,"用户ID或密码错误!\n 请重新输入!","登录失败!",MB_OKCANCEL|MB_ICONERROR))
continue;
else
return FALSE;
} else
{
break;
}
}
}
AfxEnableControlContainer();
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
。。。。。。。下面省略
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询