分享

MFC 简单的用户登录界面(在主程序窗口之前)

 禁忌石 2017-06-03


首先在VS中设计一个简单的登录界面,点击【资源视图】,然后右键【Dialog】,选择【添加资源】——【Dialog】——【新建】,这样就创建了一个新的空白对话框。



可以按自己的需要更改窗口的ID,并根据自己需要将窗口设计成登录的方式,例如我的设计如下:

      


在建立用户登录界面的时候,在添加两个示例编辑框的同时,添加变量(CString 类型)m_strUser和m_strPassword。


步骤二:添加登录验证代码


在主程序的App类的InitInstance函数体内的最前面加上如下代码(这里为BOOL CGeoDemoApp::InitInstance()函数):

  1. //============登录===========  
  2. //在主程序窗口运行前首先弹出登录对话框  
  3. while (TRUE)  
  4. {  
  5.     CLogin login_Dialog;  
  6.     //模态对话框  
  7.     int nReturn = login_Dialog.DoModal();//返回IDOK或IDCANCEL。如果返回的是IDCANCEL,则要调用WindowsCommDlgExtendedError函数来确定是否发生了一个错误。IDOK和IDCANCEL都是常量,它表明用户选择的是OK按钮还是Cancel按钮  
  8.     if(nReturn == IDCANCEL){//点击取消  
  9.         return FALSE;  
  10.     }  
  11.     if (nReturn == IDOK){//点击确定  
  12.         HWND login_Hwnd = GetDlgItem(login_Dialog,IDD_LOGIN);  
  13.         CString str_User = login_Dialog.m_strUser;  
  14.         CString str_Password = login_Dialog.m_strPassword;  
  15.         if(!(str_User == "admin" && str_Password == "admin")){//如果用户名密码不是admin/admin,则报错,提示重新输入,直至正确为止。  
  16.             if(IDOK == MessageBox(NULL,"用户ID或密码错误!\n 请重新输入!","登录失败!",MB_OKCANCEL|MB_ICONERROR))  
  17.                 continue;  
  18.             else  
  19.                 return FALSE;  
  20.         }  
  21.         else  
  22.             break;  
  23.     }  
  24.   
  25. }  

截图展示如下:



说明:本例主要目的是告诉大家登录界面如何编写,用户信息验证代码在什么地方写;实际的登录不会这么简单,肯定会和数据库关联,并从数据库中获取用户注册信息进行验证。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多