编者:李国帅
qq:9611153 微信lgs9611153
时间:2014/3/25 12:14:22
背景原因:
解决的问题(登录程序流程)
程序启动后,先隐藏主界面,显示登录界面,登录后恢复显示主界面
所需资源:
基于MFC Dialog的应用程序。
解决方案:
BOOL C***App::InitInstance()//不线程
InitLog();//日志线程
CMyDump::Setup();//异常日志线程
CDataHandle::Instance();//消息处理线程
C***App dlg;//主界面
m_pMainWnd = &dlg;
dlg.Create(C***App::IDD);
dlg.ShowWindow(SW_HIDE);//隐藏主界面
BOOL C***App::OnInitDialog()
{
CDialog::OnInitDialog();
CLoginThread::ShowLoginDlg();//创建登录线程
...//初始化主窗口
}
class CLoginThread : public CWinThread
BOOL CLoginThread::InitInstance()
CLogin dlg;//局部变量
m_pMainWnd=&dlg;
dlg.DoModal();//显示登录界面,任务完成之后,登陆界面退出
CWinThread* CLoginThread::_instance=NULL;
CWinThread* CLoginThread::ShowLoginDlg(void)
{
if(NULL==_instance)
_instance=AfxBeginThread(RUNTIME_CLASS(CLoginThread));
return _instance;
}