我的程序是基于对话框的,我要在主对话框出来之前,弹出一个验证口令的对话框,口令通不过的话主对话框就不要出来了,怎么做?
我的程序是基于对话框的,我要在主对话框出来之前,弹出一个验证口令的对话框,口令通不过的话主对话框就不要出来了,怎么做? 问题点数:20、回复次数:14Top
1 楼zheng_rui(我也是猪)回复于 2002-02-08 10:06:59 得分 3
在主对话框DOMOADL 之前 弹出一个验证口令的对话框
即在APP.INITINSTANCE 中Top
2 楼hdyd()回复于 2002-02-08 10:27:02 得分 0
我这样做了,不行Top
3 楼MSVCer(家宝)回复于 2002-02-08 10:36:44 得分 4
如果验证通不过就在APP.INITINSTANCE 中返回falseTop
4 楼nanjianhui(nan)回复于 2002-02-08 10:43:20 得分 0
你可以调用 ON_CREATE函数,在这个函数里面完成你想要做的事情Top
5 楼nanjianhui(nan)回复于 2002-02-08 10:45:38 得分 0
你可以调用 ON_CREATE 函数,在这个函数里面完成你想要做的Top
6 楼xghome(东楼)回复于 2002-02-08 10:52:37 得分 4
太简单了,我刚刚做了一个,就是另外建立一个口令验证Dlg,在app类的initstance里面先把这个dialog domodel,然后如果不对,直接返回FALSE就可以了Top
7 楼lixinsuccess(子夜)回复于 2002-02-08 10:55:19 得分 4
在你的应用程序类的函数.CxxxxApp::InitInstance();里.在你的对话框产出之前.先产生出你要的校验密码的对话框.然后对进行密码进行校验.不对.
你就不产生你的主对话框.直接让InitInstance()返回false.这样程序就退出了.Top
8 楼hdyd()回复于 2002-02-08 11:32:34 得分 0
谢谢各位的指点,是不是我只能根据口令验证对话框的返回值来是否返回false:
CLogin login;
nRet = login.DoModal();
下面再用 switch ( nRet )吗?
Top
9 楼vc_boy()回复于 2002-02-08 11:39:09 得分 5
可以在CLogin中有一个变量m_bPass,在程序中
login.Domodal()
if(!login.m_bPass) 不正确
return FALSE;
也可以在CLogin返回时进行测试,如果密码正确调用Cdialog::OnOK(),返之调用CDialog::OnCancel()
这样在程序中可以
nRet = login.DoModal()
if(m_Ret != IDOK)
return false;Top
10 楼sharkey(木壳儿)回复于 2002-02-13 11:10:26 得分 0
重载DoModal()。
Top
11 楼Mephisto_76((望美人如梦))回复于 2002-02-15 09:40:08 得分 0
在程序的InitInstance()中加入一个对话框用以校验书的密码对否。Top
12 楼shibichen(月如弯刀)回复于 2002-02-19 14:49:13 得分 0
在你的应用程序类的函数.CxxxxApp::InitInstance();里.在你的对话框产出之前.先产生出你要的校验密码的对话框.然后对进行密码进行校验.不对.
你就不产生你的主对话框.直接让InitInstance()返回false.这样程序就退出了.
Top
13 楼zhh_soviet(慕容复)回复于 2002-02-21 17:09:23 得分 0
OnCreate()中Domodal()一个dialogTop




