vc 进入下一个窗口的同时当前窗口关闭
怎么编写程序,实现在点击按钮的进入下一个窗口的同时关闭当前窗口。比如dlg1上有一个ok按钮,点击它,进入dlg2,此时dlg1关闭。求教大神。本人菜鸟,希望详细点。...
怎么编写程序,实现在点击按钮的进入下一个窗口的同时 关闭当前窗口。比如dlg1上有一个ok按钮,点击它,进入dlg2,此时dlg1关闭。求教大神。本人菜鸟,希望详细点。
展开
展开全部
你可以在dlg1的DoModal()返回之后再进入dlg2。比如:
BOOL CXXApp::InitInstance()
{
CXXDialog dlg1;
int Ret = dlg1.DoModal();
if( Ret == 123456 )
{
CYYDialg dlg2;
dlg2.DoModal();
}
}
这段代码假设在你创建的对话框APP的InitInstance中,当dlg1执行了EndDialog之后,再根据dlg1的返回值决定是否开启dlg2。
那么dlg1中的代码会这样写:
void CXXDialog::OnBnClickedBtnTest()
{
EndDialog( 123456 );//此函数为dlg1中响应按钮的例程。EndDialog会退出当前对话框的消息循环,并使DoModal()返回指定值123456
}
BOOL CXXApp::InitInstance()
{
CXXDialog dlg1;
int Ret = dlg1.DoModal();
if( Ret == 123456 )
{
CYYDialg dlg2;
dlg2.DoModal();
}
}
这段代码假设在你创建的对话框APP的InitInstance中,当dlg1执行了EndDialog之后,再根据dlg1的返回值决定是否开启dlg2。
那么dlg1中的代码会这样写:
void CXXDialog::OnBnClickedBtnTest()
{
EndDialog( 123456 );//此函数为dlg1中响应按钮的例程。EndDialog会退出当前对话框的消息循环,并使DoModal()返回指定值123456
}
展开全部
是自定义的ok还是系统默认的呢 ?
非默认情况下:
CDialog1的ok函数体如下:
CDialog2 dlg2;
if (dlg2.DoModal() == IDOK)
{
CDialog::OnOK();
}
非默认情况下:
CDialog1的ok函数体如下:
CDialog2 dlg2;
if (dlg2.DoModal() == IDOK)
{
CDialog::OnOK();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把主窗体隐藏了,只显示对话框,用模态对话框,在主窗体中一个一个的调用模态对话框,不过要记住在什么地方把主窗体显示了……
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询