I'm having trouble even beginning to GUI program in C++. I'm using DevC++ with WX widgets and I've downloaded the DevPac.
I really need something to help me understand the basics. For example. How would one go about creating a project and programming a GUI applicatin. Also, when you compile a project (i've compiled some of the ready made examples) why is there so many files generated along with it? I've probably done something wrong.

Is there a good book to explain the basics of GUI programming? Or a good and detailed article. I was hoping there was a book like GUI Programming for dummies or something which will spell it out for me as I've having trouble reaching the starting line.

Thanks to anyone who can suggest anything.

Danny2000

Recommended Answers

All 8 Replies

Dev-C++ is very old and outdated, and used an old version of gcc compiler. Replace it with Code::Blocks/MinGW and you will have few problems.

commented: I just moved to the CodeLite right now! Bye bye Dev-Cpp. and mingw 4.4 is faster that I thaught. +2

Hi Danny. Found this article that may help.
http://www.gamedev.net/reference/programming/features/gui/

It looks right up my alleyway as well, so I will be bookmarking it as well. It makes a very valid point right on the main page, stating that Windows has a nice GUI, however, this method will incorporate DirectX, making it more appropriate for gaming GUI's.
Hope it helps.

Thanks very much. It's a pitty there's not a book on the market which explains the very basics of GUI programming to beginners. This article looks great, thanks.

There is a great book about C++ and GUI programming by Jasmin Christian Blanchette of trolltech dot com. His book, well, about 60 USD, also older versions are available, is great for learning QT (cute). Following his tutorial you will have learnt the very basics of GUI programming within ten minutes, and probably you won't make use of any other C++ GUI system than that portable QT for windows, unix, mac.

-- tesu

Hi Danny
I've been looking at C++ for a while, and other posters will probably tell you this one fact. Standard C++ is difficult to make a GUI, but the research I have done also confirms what tesuji has said, Qt, a downloadable library originally from trolltech which was bought by nokia, has some libraries that make creating a GUI easy.

A free and modern easy to use version of a C++ IDE is available from microsoft, visual studio 2010, here is the link -
http://www.microsoft.com/express/windows/

and it does the same thing you mention, creating extra files, ones that your not aware of what they are there for. I am assuming, and other C++ programmers can either confirm or set us straight, that these are the libraries that are created or put into the project when you make a new project or application. An .exe program uses the lines of code you create to run, however, the compiler is adding the libraries when your building the program. i believe its adding the libraries you need to actually run the program outside of the compiler.

Please, C++ programmers, weigh in here, and tell us newbs the lowdown.

I have been looking for a main practical language, not the easiest, but the better one to learn, and python keeps coming up as the winner among programmers as a beginner language, one that can help you to learn C++ down the road as you will have all the programming principles already down.

I am learning Visual Basic, the GUI is a bit easier to generate with drop and drag buttons and panels, and the coding is simple to learn. Both OpenGL and DirectX is compatible with VB, OpenGL being a set of graphics libraries that is cross platform, while DirectX being its Microsoft counterpart although limited to PCs.

If your looking to make a gaming GUI, find your primary language for the AI and physics(all the stuff you want the game to do), and nail down your choice of graphics display. The GUI can be generated with graphics, while the programming language directs what the choices, like menus and buttons, do.

If your a hobbyist, C++ programming for the absolute beginner, a book authored by Mark Lee, teaches C++ from the ground up, using game building as the premise. it introduces Microsofts IDE, as well as the GDK game engine, the free for personal use engine included with Visual studio.

Hope I didn't flood you with too much info.

Enjoy the experience. My head hurts from mine.

Thanks very much for all the help. The information above is very useful and I'll certainly take a look at other languages. I'm determined to apply C++ at this stage and have started to grasp some important concepts which will help me down the road.
Thanks again

I'm having trouble even beginning to GUI program in C++. I'm using DevC++ with WX widgets and I've downloaded the DevPac.
I really need something to help me understand the basics. For example. How would one go about creating a project and programming a GUI applicatin. Also, when you compile a project (i've compiled some of the ready made examples) why is there so many files generated along with it? I've probably done something wrong.

Is there a good book to explain the basics of GUI programming? Or a good and detailed article. I was hoping there was a book like GUI Programming for dummies or something which will spell it out for me as I've having trouble reaching the starting line.

Thanks to anyone who can suggest anything.

Danny2000

Hi Dan,
I would suggest you get decent compiler/IDE. You can choose Either C::B, CodeLite or wxDevCpp which is well maintained version of DevCpp. Then get yourself up on C++. For GUI with wxWidgets, use the official book PDF for free and get your head on it. Then try yourself to do something and for any question, ask here or in wxForum Also there is very active mailing list, well supported by developers of wxWidgets. You can browse wxWiki and get some docs there. Don't forget to visit home page for more info

As of IDE, I'm biased like anyone else and I recommend CodeLite :)

And FYI: there are several GUI RAD builder for wxWidgets, both commercial and free
Commercial:
wxDesigner By wxDeveloper Robert Roebling
DialogBlocks By wxDeveloper Julian Smart

OSS:
wxSmith - Inbuilt with Code::Blocks
wxFormBuilder - Stand alone inheritance driven RAD
wxDevCPP RAD - inbuilt designer in wxDevCpp

See here for comparison

commented: g00d +2
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.