MFC单文档的工程怎样做能使在运行时先弹出一个对话框

2024-12-29 03:05:29
推荐回答(5个)
回答1:

运行时可以先弹出一个对话框, 你在建工程时要建 对话窗为基础的 工程。
MFCAppWizard(exe) 定工程名,定文件夹。进入下一步。那里有3个选则,不要选多文档,不要选单文档,要选对话窗。建工程。
建好工程,进资源 制作 对话框,加入 相应 的语句。

这算你的一个 登陆界面 程序。
(你另编一个独立的程序,单文档 多文档 随你喜欢。)
登陆界面 程序 里 加 某事件发生时,例如 登陆 成功,用
system("......"); 运行 你 另编的 独立的程序。
当然 也可以 用 CreateProcess 或其它方法 运行。

回答2:

做这样的登录界面,应该你你会,插入对话框资源,然后为他建立一个类,在OnOk函数里写判断用户输入的信息。

现在估计你就是想如何启动程序时先出现登录界面,登录成功再出现主界面。

//现在假设你为登录界面建立的类为CLoginDlg
//那么在主界面的OnCreate函数下添加如下代码
CLoginDlg dlg;
if(IDOK == dlg.DoModal()) {

}
else
exit(0);
//登录界面的OnOk函数可以如下写

UpdateData();

if(m_UserName.IsEmpty()){
MessageBox("用户名不能为空!");return;
}
if(m_Pwd.IsEmpty()){
MessageBox("密码不能为空!");return;
}
if(m_Pwd!="21chenxb"||m_UserName!="21chenxb"){
MessageBox("您输入的信息不正确!"); return;
}

CDialog::OnOK();

回答3:

首先你要新建一个对话框,并为这个对话框新建一个类,假如为CMyDlg。在应用程序类(C***App)的InitInstance()函数里AfxEnableControlContainer();这句话后面添加如下代码(当然要包含头文件MyDlg.h):
CMyDlg dlg;
if (dlg.DoModal() != IDOK)
{
return FALSE;
}

回答4:

在InitInstance里把登陆框放在CMainFrame* pMainFrame = new CMainFrame之前

回答5:

建工程的时候选择单文档。。。