原文地址:https://blog.csdn.net/to_baidu/article/details/53649796
步骤一:登录界面设计
首先在VS中设计一个简单的登录界面,点击【资源视图】,然后右键【Dialog】,选择【添加资源】——【Dialog】——【新建】,这样就创建了一个新的空白对话框。
可以按自己的需要更改窗口的ID,并根据自己需要将窗口设计成登录的方式,例如我的设计如下:
在建立用户登录界面的时候,在添加两个示例编辑框的同时,添加变量(CString 类型)m_strUser和m_strPassword。
步骤二:添加登录验证代码
在主程序的App类的InitInstance函数体内的最前面加上如下代码(这里为BOOL CGeoDemoApp::InitInstance()函数):
- //============登录===========
- //在主程序窗口运行前首先弹出登录对话框
- while (TRUE)
- {
- CLogin 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_LOGIN);
- 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;
- }
- }
截图展示如下:
说明:本例主要目的是告诉大家登录界面如何编写,用户信息验证代码在什么地方写;实际的登录不会这么简单,肯定会和数据库关联,并从数据库中获取用户注册信息进行验证。