各位大虾,小弟的程序中包含模式对话框(简称A)和非模式对话框(简称B),如果对话框A先弹出来,接着对话框B弹出,此时如果单击了对话框B的确定按钮,感觉此时控制权并没有返回给对话框A。小弟初学VC,还请各位不吝赐教!谢谢。

解决方案 »

  1.   

    关闭对话框B时使用函数SetForegroundWindow(对话框A的窗口句柄);
      

  2.   

    不好意思,可能是小弟心急没有表述清楚。我的程序中会不定时的弹出非模式对话框,也就是上面所说的B,而如果我此时先弹出输入密码之类的对话框A,接着对话框B弹出,那么如果我先点了B上面的确定,本以为现在的焦点应该回到对话框A赏了,但是却发现不是这样。如果点击对话框A,他很容易就失去焦点,因为后面的视图是不断刷新的,所以感觉此时的控制权就被后面的视图夺去了,就不是原来的那种模式对话框了。不知讲清楚了没有,还请多多指教,谢谢!
      

  3.   

    谢谢erdgzw,但是SetForegroundWindow只是暂时的将其放在最前面,但是并不能获得控制权。
      

  4.   

    你说的控制权就是指焦点窗口吧!用SetFocus试试