So, I've been toying with the PopCap game framework. I find it really easy to use. It reminds me more than a little of Java (in fact, it looks to be a Java framework ported to C++). It's not as simple to code as Flash, but it is looking to be a lot better suited to games. Sure, you can make games in Flash, but after you've done it, you begin to really see how Flash wasn't really meant to make games, but rather to make animations, so game creation is a little funky in Flash.
In the PopCap framework, I haven't looked at a single low level graphics function implementation. If I want a colored box on the screen, I call the FillRect method of the Graphics object that I am sent in my Board::Draw member function. I've seen neither hide nor hair of window messsages, message pumps, or whatever.
At the moment, I'm making Pong with it. I've been spending more time on how I want the ball's speed to increase than on graphics code (which is simply the aforementioned FillRect call).
Other than to dig out how I needed to hide the cursor, I haven't looked at the source code for the framework much, other than to look at class interfaces (so that I could see which functions I had to add in order to respond to mouse movement and button presses).
So, in other words.... Hattan, go get it.