永发信息网

MFC中dlg.DoModal()返回-1,怎么解决?

答案:3  悬赏:60  手机版
解决时间 2021-01-30 03:12
  • 提问者网友:却不属于对方
  • 2021-01-29 14:57
MFC中dlg.DoModal()返回-1,怎么解决?
最佳答案
  • 五星知识达人网友:枭雄戏美人
  • 2021-01-29 15:41
通常对话框不显示的原因有
1 父窗口HWND无效
2 在ONINITDIALOG里用了ENDDIALOG
3 无效的对话框资源ID
4 使用没有注册的的自定义控件
5 对话框的某些控件创建失败,如RICHEDIT,要加上AfxInitRichEdit();

根据这些方面,你一个个排查一下吧,看不到你的代码,无法具体的指出问题在哪个地方;
全部回答
  • 1楼网友:风格不统一
  • 2021-01-29 18:19
那个是弹出对话框的代码,你是否将要弹出的对话框的头文件包含了追问必须包含过了,不包含是要报错的,我这里编译通过了,就是运行时不弹出对话框,DoModal()的返回值一直是-1追答你是点击哪个控件弹出对话框,返回值是-1说明是不能创建对话框,很可能是你要弹出的那个对话框设置有问题。
  • 2楼网友:低音帝王
  • 2021-01-29 16:54
你的控件里,都有哪些控件,如richcontrol有吗,可能控件要用初始化函数初始追问有RICHEDIT,IP Address,progress,按钮和EDIT,我只初始化了RICHEDIT,其他控件也不知道要不要初始化
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯