Bring an MFC CDialog window to the front of a "Full Screen" OpenGL window
Posted on 2004-09-02
I have an application that has no window decoration,takes up the entire screen space and displays an OpenGL 3D scene. When stimulated, this application, via an MFC DLL, opens a dialog based window with an AVI based animation. My problem is that this window will not come to the front of the OpenGL window. I've tried the following (by searching on experts-exchange):
ShowWindow helps in making the window disapear and appear (it appears on the task bar) however it does not bring it to the forefront. I've even tried to code up a quick daemon application that will play the AVI but it behaves the same as the DLL. The ONLY way I have got it to work is if I re-enable the window decoration of the OpenGL app and stimulate the creation of the dialog, Manually(clicking on it) bring the dialog to the front (it does not repaint, it looks locked up) and then call the ShowWindow(SW_HIDE) and then call ShowWindow(SW_SHOW) again. This will bring it to the front (I presume that the window never went to the background because the OpenGL app's title bar is colored like an unfocused window during this process).