如题。问题是这样出现的。我在主程序中启动了一个对话框,这个对话框是个文件<上传对话框>。
在<上传对话框>中,有两个按钮,<添加文件>,<开始上传>。
点击添加文件按钮,就会让用户选择一些文件,加入<上传对话框>中的列表。
点击开始上传按钮,这个时候就会创建一个线程,负责将列表中的文件拷贝到别的地方。
在开始上传的时候,上传线程会检查即将上传的文件是否已经上传。
如果已经上传,就会弹出<提示框>,询问用户是继续还是忽略次文件,这个时候问题就出现了。当弹出这个询问<提示框>的时候,点击主程序的任何一处,<上传对话框>就消失了,只剩下提示对话框在主程序对话框中,在点击<上传对话框>又出现了,再点击,又消失,如此往复。
按理说,这个<提示框>的父窗口是<上传对话框>,上传对话框是不应该消失的。
在线等待高手解答,不胜感激。

解决方案 »

  1.   

    使用spy++看了看,它的父窗口并没有销毁,好像是隐藏起来了,求解。
      

  2.   

    MFC程序工作线程里不应该直接做界面操作,应该发生消息给界面线程,由界面线程处理。你应该SendMessge给主线程,让主线程弹出对话框
      

  3.   

    各位,有能给解决的吗?
    在说简单点,程序A中的对话框DA创建了一个线程T,线程T又创建了一个对话框DT。这连个都是模态对话框,问题是,为什么DT不屌DA,也就是说为什么这连个模态对话框没按顺序叠起来,而是DT成了首个模态对话框,DA倒是成了个自由的对话框了。