Need Guidance

I have been programming on console since two years. I know fairly well about C++ and have also used SFML for game programming using console. What I want now is to get out of console programming and start window programming. So I ask for your guidance as to how should I get started with window programming.

Thanks for all your help in advance.
start with the ebook 'Forger's win32'
Is that "I want to really learn the internals of the windows API",or is that "I want to make GUIs with buttons and switches and pictures and all that sort of thing"? Big, big difference, so which of the two is it?
Basically I want to start making applications using C++.
Application just means program. I'm going to guess that you mean you want to make things with graphical interfaces.

This is typically done using a widget toolkit - https://en.wikipedia.org/wiki/Widget_toolkit

There is a list here:
https://en.wikipedia.org/wiki/List_of_widget_toolkits
There are numerous good libraries for working with graphics.

As a cross-platform solution, you could take a look at QT or wxWidgets. Both provide all functionality you need to create windows with a good GUI, including buttons and other widgets you want.

If you are working on windows and prefer to use a C-like interface, you could try the Windows API. It has all features required to bring up windows with widgets (it has buttons and text fields), but the API might be a bit complex and tedious, and it surely looses to specialized C++ GUI libraries.

Then there's Linux. There are multiple ways to go there. Usually a cross-platform GUI alternative is chosen. QT or GTK+ tend to be the most popular alternatives. If you like to know how these work internally, you could try using the X11 windowing system. The X11 system requires you to do most work yourself though.
If you use MS Windows you can use MFC. Since Visual Studio 2013 Community it's free.
Even my teachers are saying I should go with Qt. Now I have worked with Qt but can't seem to really understand it that's why I left it. So are there any tutorials or books about Qt? Or any other help you can provide about Qt?

I am using Visual Studios 2015.
Last edited on
Here are a few links to some helpful QT tutorials which I have lying around:
1) https://www.youtube.com/watch?v=6KtOzh0StTc&list=PL2D1942A4688E9D63
2) http://www-cs.ccny.cuny.edu/~wolberg/cs221/qt.html
3) http://zetcode.com/gui/qt4/introduction/
4) http://www.bogotobogo.com/Qt/Qt5_OpenGL_QGLWidget.php

Before you actually start GUI development I would get very familiar with object oriented programming, as well as have the basic concept of data structures down. Just my opinion though, everybody has different paces for learning.

Edit: also if your interested in games I would consider OpenGL or something similar.
(OpenGL tutorial) http://www.opengl-tutorial.org/beginners-tutorials/
Last edited on
I know object oriented programming and have worked on many games and console based applications. I also know a lot about data structures and I use one in almost all of my applications. Just wanted to give those applications a GUI rather than being console based. And I also want to learn 3D gaming using Open GL but I have delayed it for the moment. I have also made many 2D games using SFML like Snake, Mastermind, Checkers, Chess, Blackjack, Spades, Hearts and so on.

I want to know that can I use SFML with Qt or not? If not then does Qt provide the features of SFML like networking, audio, graphics and etc.?

Thanks for all your help.
Last edited on
Yes and they have a nice and quick little tutorial to get you up to speed with the syntax of using SFML with QT on SFML's website:
http://www.sfml-dev.org/tutorials/1.6/graphics-qt.php

Apparently wxWidgets also supports SFML quite nicely:
http://www.sfml-dev.org/tutorials/1.6/graphics-wxwidgets.php

Qt also integrates nicely with OpenGL if you don't want to use SFML or need more "umph" so to speak.
Thanks again for all your help.
Topic archived. No new replies allowed.