MFC,后制作的登录对话框先启动,但原先的对话框不能运行计时器

各位大大好,第一次提问,请多关照!
问题叙述如下:
1.我先做了一个界面,启动按钮里会运行OnTimer来处理SOCKET发过来的数据并传回。
程序已经可以运行了,即使不连接服务器也可以本地运行。
2.因为需要做一个简单的不连接数据库的登录界面,且希望登录界面先显示,就修改了InitInstance,把初始指针
改成了登录界面的。然后密码正确后,利用OnOK关掉登录界面,“登录”按钮里调用DoModal创建原先的界面。
3.但是这样一来弹出的原先界面就只能对编辑框设置些字符串显示而无法另计时器计算显示了。

跪求各位大大给小弟讲解下!自己确实没啥赏金,只能再拜表诚意!

2个回答

你的登陆界面是否是模式对话框?如果是,则是因为弹出它阻止了原窗体的运行。

Dreamtide
猫叔的大师兄 登录界面是模态,我把它设为首先弹出,然后通过它DoModal出我做的一个小仿真系统。很抱歉我还没去修改!希望有效谢谢!
接近 5 年之前 回复
91program
91program 回复猫叔的大师兄: 模式对话框弹出后,会阻止原来的窗体进程直到模式对话框关闭,原来的窗体进程才能继续运行。换成非模式对话框、或者使用线程都可以解决你的问题。
接近 5 年之前 回复
Dreamtide
猫叔的大师兄 谢谢!确实是DoModal建立的模式对话框。我是后insert登录界面的,原窗体是指我最开始默认生成的那个吗?那么是不是我换成非模态就可以了?我在没做登录界面的时候那个界面里的都能正常启动,例如OnTimer。再次感谢!
接近 5 年之前 回复

可以在InitInstance函数中DoModal主对话框之前你可以先DoModal你的登陆窗口。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问