VC基于对话框的工程中如何在现实主对话框之前显示对话框? 5
我用VC6.0建立一个基于对话框的工程,用第一个页面做主页面,再另外建立一个登录对话框,运行时显示的是主页面。怎样做才能让我运行时显示的就是登陆框,经过确认之后才能进入主...
我用VC6.0建立一个基于对话框的工程,用第一个页面做主页面,再另外建立一个登录对话框,运行时显示的是主页面。怎样做才能让我运行时显示的就是登陆框,经过确认之后才能进入主页面呢?
展开
2个回答
展开全部
第一步,你先得创建一个登录对话框,并创建其对应的类,比如CLoginDlg;
第二步,找到你的BOOL CXxxApp::InitInstance()这个函数。修改其中的这段代码:
CXxxDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
至于修改的细节,你自己发挥吧。例如,你可以这么写:
CLoginDlg myLoginDlg;
if (myLoginDlg.DoModal() == IDOK)
{
if (在这里判断登录是否成功)
{
// 这里是登录成功的操作:
//
CXxxDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
}
else
{
// 这里是登录失败的操作:
//
AfxMessageBox(_T("登录失败"));
}
}
else
{
// User not want to login.
// So nothing to do, and just to exit.
}
第二步,找到你的BOOL CXxxApp::InitInstance()这个函数。修改其中的这段代码:
CXxxDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
至于修改的细节,你自己发挥吧。例如,你可以这么写:
CLoginDlg myLoginDlg;
if (myLoginDlg.DoModal() == IDOK)
{
if (在这里判断登录是否成功)
{
// 这里是登录成功的操作:
//
CXxxDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
}
else
{
// 这里是登录失败的操作:
//
AfxMessageBox(_T("登录失败"));
}
}
else
{
// User not want to login.
// So nothing to do, and just to exit.
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询