Lixiaoyao-Ares 2020-05-24 19:11 采纳率: 0%
浏览 280

MFC因创建子窗体而导致主程序不能接收数据,求解答?

C++做的本地通信的项目。调式过程中,客户端父窗体内点击按钮产生一个子窗体,由子窗体向服务器发数据,服务器返回的数据在客户端的recv()函数并没有收到,在recv()处下断点,也并没有击中。只有把所有窗体都点X关闭,程序仍然在调试中时,recv()的断点就会击中,接收到数据,请问一下这是为什么?

我的子窗体指针在父窗体中定义,在父窗体构造函数赋为NULL,只有点击按钮要创建子窗体时,才会判断当前子窗体指针是否为空,为空则创建。而当子窗体关闭时,会向父窗体发送一个消息,父窗体接收到消息,将子窗体指针置成NULL。

这是我的子窗体创建代码:

if(dlg == NULL)
{

dlg = new CDLG(); //CDLG是子窗体的类

dlg->Create(IDD_DLG,this); //IDD_DLG子窗体ID

dlg->ShowWindow(SW_SHOW);

}

  • 写回答

1条回答 默认 最新

  • 小学狗喵喵叫 2020-05-25 09:23
    关注

    看起来是非模态对话框,recv()是在父窗体的子线程吗

    评论

报告相同问题?

悬赏问题

  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题