I am fairly experienced with C++, but I have never done anything with graphics, and I would like to start writing a game.
My first attempt at a simple game used VisualStudio.NET, and I used Windows.Forms to display simple 2D graphics (using .NET graphics objects), and Windows.Forms.Buttons to introduce user input to the game.
However, this is obviously a very simple prototyping way to develop a game, so I am wondering what the professional approach is to displaying graphics and creating buttons. I am looking into using OpenGL for some simple 2D graphics - would I use this to create buttons etc?
You can play around with OpenGL for custom graphics and GUI packages for buttons and controls etc, but if what you're interested in is the game, I'd say just get yourself a game engine and go from there. It'll take care of the low-level stuff for you a lot better than you can yourself.