I have a VB6 MDI application and the users can select which database they want to connect to (eg "archive" or "live"). When the users are accessing the "archive" database, I would like to have this prominantly displayed. Ideally as a watermark across the forms. All the controls would still be visible and work correctly. I need this watermark to persist when they use print screen. In fact, a solution where just the print screen is watermarked would be ok.
Also, I would prefer a solution which I could implement in the MDI parent form, so I don't have to change all the individual child forms.
So far, I've tried.
Add watermark to MDI parent background, and make MDI children semi-transparent. Unfortunately, it seeems that you can't make MDI child forms transparent - the whole MDI application (parent and children) becomes transparent.
Make the MDI application tranparent, then add a non-child form with the watermark behind the MDI parent form (this form moves and resizes in line with the MDI parent). This look ok, if a bit faint, but Alt-PrintScreen only captures the MDI window, so the watermark effect is not captured. PrintScreen is ok. So, I could consider adding a keyboard hook to disable Alt-Printscreen.
Add a keyboard hook to trap the PrintScreen keypress and then display a transparent form with the watermark over the MDI application. As with 2, the Alt-PrintScreen only captures the MDI form, and does not show the watermark effect. Also, this solution only watermarks the print screen output.
Adding a background image to the MDI form. This doesn't show through the other controls, and with forms with a lot of frames, the watermark is not that obvious.
Is there some neat way to render the watermark graphics over the form window? Can you place a transparent picture box over the other controls and still have these controls work correctly?
All advice appreciated.
Thanks