When using DirectDraw (Dx7) in full screen, theres exclusive access. Is it possible to have a form (that is in the same program) be shown on top of the form that is being blitted to?
Printable View
When using DirectDraw (Dx7) in full screen, theres exclusive access. Is it possible to have a form (that is in the same program) be shown on top of the form that is being blitted to?
If you're using DDraw in fullscreen mode then you are blitting directly to the video memory that is being used to render the image to the monitor. You can't keep that primary surface's info as it is and display a window on top of it.
Why use fullscreen mode if you want to show other windows?
What I had in mind was to use the 'on top' form to display selection menus/player status while a game is running. I imagined that having a form with custom controls for a GUI on top of the blitted form would easier than blitting a GUI.
Anyhow, since I can't do that. How would I go about blitting a GUI (simple things, like command buttons), what are some difficulties in doing this?
Well I don't see any big difficulties really. You'll have to get the mouse clicks - I'm not sure if you're going to get click events if you're in fullscreen mode. You may have to use DirectInput or GetAsynchKeyState() or something similar. I have only done this in C, never VB. I don't see any major problems though.
I have the same problem. But my question is, can I close the form i'm blitting into temporarily to open another window, and then come back to it?
How about maximising and minimising the form?
Code:Form.WindowState = vbMinimized
'and
Form.WindowState = vbMaximized
I think you could use clippers in both cases:
http://msdn.microsoft.com/library/wc.../ddover_95.htm