点击“确定”按钮(ID为IDOK)时 本帖最后由 VisualEleven 于 2013-03-15 11:12:15 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你这个是模态对话框啊OnOK之后就结束了你要是想实现你的想法那你得用非模态对话框要用dlg.Create然后show的但建议你不要这么搞你可以给确定按钮加上界面控制如果没有输入的话,确定键就是灰色的 模态对话框就是这样,在DoModal()==OnOK之后就没有了你自己create出来吧,自己来控制窗口的生命周期 你这个例子太简单了,这样根本不能解决我的问题啊,我希望能够点击“确定”按钮,只是在弹出MessageBox时,窗口不关闭。你这个例子是连“确定”按钮都不能点击。不过还是谢谢你 IDD_DIALOG7对话框关联的类中添加IDOK的响应函数,在该响应函数中去做判断 在对话框中 ,处理 OnOK int nret = dlg.DoModal(); //弹出对话框“IDD_DIALOG7”if(nret==IDOK) //点击"确定",当程序运行到这一步的时候,对话框已经关闭了。{ UpdateData(FALSE); str.Format (_T("%s"),dlg.m_Mod_Name) ; if(str != "") { m_Edit_TData.SetItemText(nSelItem,0,str);//改该行名称 strcpy_s(var[nSelItem], str); } else { MessageBox("变量名称不能为空!"); return;//由于对话框已经关闭,所以返回就退出了当前函数,没有再次弹出对话款 }}解决方案,推荐重载对话框的OnOK跟OnCancle函数,把判断内容放在弹出的对话框的代码中。 CDialog作参数,打开非模式对话框 来深圳玩几天,散分 请问各位关于一个创建和启动线程的问题,急。。。。。。 多表查询GetCollect里面应该怎么写 activex中显示Dialog 请教:怎么把一个.bmp文件的左右两半内容分别赋给两个CBitmap对象? 在做网络Socket,开启二个线程,一个负责接收一个负责处理,是否会出现。。。 CEditFrame中的问题。 缩小文本框 数据不能共享??我在keyboard hook 中,想定义一个CList的共享数据,怎么不能实现?? OnTimer里跑多线程的问题 如何在c方式下 获取cpu温度 风扇转速等方面信息
OnOK之后就结束了
你要是想实现你的想法
那你得用非模态对话框
要用dlg.Create
然后show的但建议你不要这么搞
你可以给确定按钮加上界面控制
如果没有输入的话,确定键就是灰色的
你这个例子是连“确定”按钮都不能点击。不过还是谢谢你
if(nret==IDOK) //点击"确定",当程序运行到这一步的时候,对话框已经关闭了。
{
UpdateData(FALSE);
str.Format (_T("%s"),dlg.m_Mod_Name) ;
if(str != "")
{
m_Edit_TData.SetItemText(nSelItem,0,str);//改该行名称
strcpy_s(var[nSelItem], str);
}
else
{
MessageBox("变量名称不能为空!");
return;//由于对话框已经关闭,所以返回就退出了当前函数,没有再次弹出对话款
}
}解决方案,推荐重载对话框的OnOK跟OnCancle函数,把判断内容放在弹出的对话框的代码中。