This trick actually takes advantage of a little known fact, and what may be a bug in Access. The fact is that Access uses a different forms engine from Windows. Controls on standard Windows forms are always Windows windows, that is, each control has a Window data structure, and Windows manages all the built-in things like scrolling and resizing the frame. This takes up a lot of the Windows GDI resources. Access uses its own forms engine, which simulates a Windows window. This saves a lot of resources. But in order to avoid having to duplicate the logic that handles all the built-in functions, Access creates a real Windows window when you give the control the focus. In other words, focused controls are real Windows windows, while unfocused controls are static bitmap images created by Access.
So the reason this cool trick works is that, when the control is unfocused, Access repaints it, honoring the Transparent BackStyle property and ignoring the BackColor. But when it's focused, Windows repaints it, and (for a text box, at least) Windows ignores BackStyle and honors BackColor. I don't know if this was by design or by accident; the Help file doesn't describe this behavior at all. If it was accidental, it's a bug, and may be corrected in a future version. But it's such a cool feature that it's worth using, even if it stops working this way some day. The worst that can happen is that you'll have to go back in and write all the laborious GetFocus and LostFocus code if you port your database to a later version. Rick Sprague