3

I'm looking into creating a GUI program for Windows in C++, I have a good knowledge of C++ in the command line and also in game creation. But I'm not sure where to start with GUI application development.

I have Visual Studio 2010 and have created new projects with a GUI but these templates are complex and leaves me not understanding whats happening and how to modify it.

So I'm asking where do I start? Preferably good websites that you can recommend or tutorials, rather than books being a poor student :)

4
  • Re books: there's always the library ;) Commented Jun 1, 2010 at 20:33
  • Very true! Maybe I should venture into the University library one day ;) Commented Jun 1, 2010 at 20:35
  • There's a bid difference between programming GUIs (like window applications) and programming games since the APIs are completely different. Commented Jun 1, 2010 at 20:36
  • possible duplicate of Windows GUI C++ Programming Commented Jun 1, 2010 at 20:56

3 Answers 3

7

Having written Windows code since Win2.0, I have to say: start with C#. It's a very easy language to learn after C++, and many of the new features (like built-in event handling) were put there to make writing GUI applications easier.

Then, once you're used to the basic concepts of window management and messaging, then drop down into C++.

I say this for the same reason that assembly is not a good first language. There is an enormous amount of housekeeping code in a Windows application, and in C++ you see it all. Better to use a language that hides much of it until you're grounded.

Sign up to request clarification or add additional context in comments.

1 Comment

Why the downvote? He asked how to approach C++ Windows programming, I said via C#.
5

I'd personally recommend using Qt instead to develop your GUI.

3 Comments

Can't agree any more! Why restrict yourself to windows. Someday you'll want to port to an other plateform. And even if it was a win only lib, the tools and documentation are so great that I still would recommend it ;)
Can you do glass effects in windows with this?
You can do any native effects you wish, because Qt gives you access to the native window mechanisms, but there's nothing currently built into the library to support it.
1

Use a GUI framework/library that hides the dirt from the low-level GUI api. MFC is not a solution - it is only a thin layer above the WinAPI. I recommend using QT or wxWidgets. If you use Qt use the Qt creator/Qt designer to design interfaces. If you use wxWidgets use wxFormBuilder.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.