首页 理论教育VC++MFC视频教程:登录对话框与主对话框组合

VC++MFC视频教程:登录对话框与主对话框组合

【摘要】:图5-1 插入新对话框资源图5-2 编辑登录对话框3)添加一些控件并修改控件的属性,见表5-1。表5-1 “登录”对话框的控件属性4)在“登录”对话框上单击鼠标右键,在弹出的快捷菜单中,选择“ClassWizard”命令,或按快捷键<Ctrl+W>,如图5-3所示。图5-3 打开类向导图5-4 创建登录对话框的关联类6)在登录对话框资源中双击“登录”按钮,建立消息映射函数OnOK并编写代码。

大部分网络软件,甚至单机版软件都具有登录功能,当账号和密码匹配时才能进入程序主窗口。如果账号和密码一直不能匹配则一直无法进入,最后只能选择退出软件。

使用MFC应用程序向导,创建一个工程名为“QQ”的对话框程序。

1)在资源视图中的Dialog上单击鼠标右键,在弹出的快捷菜单中,选择“Insert Dialog”命令,添加一个新的对话框资源作为登录对话框,如图5-1所示。

2)修改对话框的ID为IDD_LOGIN_DLG,标题为“登录”,并修改字体和外观,如图5-2所示。

978-7-111-46378-8-Chapter05-1.jpg

图5-1 插入新对话框资源

978-7-111-46378-8-Chapter05-2.jpg

图5-2 编辑登录对话框

3)添加一些控件并修改控件的属性,见表5-1。

表5-1 “登录”对话框的控件属性

978-7-111-46378-8-Chapter05-3.jpg

4)在“登录”对话框上单击鼠标右键,在弹出的快捷菜单中,选择“ClassWizard”命令,或按快捷键<Ctrl+W>,如图5-3所示。

5)通过类向导为IDD_LOGIN_DLG建立一个对话框类“CLoginDlg”,如图5-4所示。

978-7-111-46378-8-Chapter05-4.jpg

图5-3 打开类向导

978-7-111-46378-8-Chapter05-5.jpg(www.chuimin.cn)

图5-4 创建登录对话框的关联类

6)在登录对话框资源中双击“登录”按钮,建立消息映射函数OnOK并编写代码。

978-7-111-46378-8-Chapter05-6.jpg

7)修改App类中的进程启动函数InitInstance的代码。

978-7-111-46378-8-Chapter05-7.jpg

8)在主对话框资源内添加一个按钮,ID为IDC_LOGIN,标题为“重新登录”,如图5-5所示。

978-7-111-46378-8-Chapter05-8.jpg

图5-5 编辑主对话框

9)双击“重新登录”按钮建立消息映射函数,并编写代码。

978-7-111-46378-8-Chapter05-9.jpg

10)编译并运行,测试代码,如图5-6所示。

978-7-111-46378-8-Chapter05-10.jpg

图5-6 查看运行结果

在CLoginDlg::OnOK函数中,只有输入正确的用户名和密码才能执行基类函数CDialog::OnOK,结束阻塞函数ldlg.DoModal并返回IDOK;如果单击“退出”按钮执行的是基类函数CDialog::OnCancel,则结束阻塞函数ldlg.DoModal并返回IDCANCEL。在InitInstance函数中根据返回值判断,如果是IDCANCEL则程序不进入主对话框而直接退出进程。