wxWidgets or Qt?

I want to start learning how to program GUIs, I have tried to setup wxWidgets without success, but I will try again.

My questions is: Should I use wxWidgets, Qt, or any other GUI library (for C++)?

Please list the advantages and disadvantages of each.
closed account (o1vk4iN6)
I have tried to setup wxWidgets without success

Yah one of disadvantages of wxWidgets is that it uses a lot of macros. If you are on a windows machine you need to set the compiler (at least for Visual Studio, as a window application so wxWidgets can link to the winMain() or w/e its called). It also has no designer for gui, if you want to build a GUI using a tool with drag and drop functionality wxWidget does not provide it (as far as I know). You need to create everything by code. Qt provides a designer for the GUI along with a tool that compiles and generates the C++ code for you. Qt also provides a lot of customization in terms of style. You can easily change the style of your program, you can change the color template, it is easily modifiable. It provides QSS which is based off CSS.

I've used both but the overall experience is better for Qt i think. Though wxWidgets finally released a new major version (wxWidgets 3.0) which I haven't tried yet.
Last edited on
It also has no designer for gui

Technically, that is true. Technically, Qt doesn't have one either. However, there are many toolkits out there that will do the GUI building for you, and Qt just happens to provide their own one. WxWidgets GUI's can actually be built graphically using tools like WxSmith (comes with Code::Blocks), wxDev-C++ (was maintained for longer, doesn't get as many bad reviews) or WxFormBuilder.

Otherwise, I agree with xerzi. Due to the way that each is made, wxWidgets generally takes more code to do the same amount of work, but gives you more control over what is created. However, I really like the signals and slots mechanisms that Qt adds, though it can be a bit wierd if you aren't used to them.
closed account (z05DSL3A)
CDuck wrote:
I want to start learning how to program GUIs
and wrote:
My questions is: Should I use wxWidgets, Qt, or any other GUI library (for C++)?
I'm not a big fan of cross platform GUI libraries such as wxWidgets and Qt (actually a cross platform application framework). I, personally, would learn the 'native way' for your preferred platform first.


If you want to do some 'more creative' UI programming, take a look at Cinder.
"Cinder is a community-developed, free and open source 
library for professional-quality creative coding in C++."
http://libcinder.org
closed account (G30GNwbp)
I tried wxWidgets and did not like it. I have just recently started to learn Qt and am so far finding that I do like more than wxWidgets.

I purchased the book "C++ Programming with Qt4 (Second Edition)"; and I am finding that I like the book. I am use to books written for open source projects to be very poorly edited; and I am not finding this to be true about this book.
I too recommend Qt over wxWidgets. Its paradigms are quite intuitive and its documentation is excellent, in my opinion.

@Grey Wolf
You're aware that this adds code maintainability issues and additional development time for someone who wants to write code that runs on multiple platforms, right?

-Albatross
closed account (z05DSL3A)
Albatross wrote:
You're aware that this adds code maintainability issues and additional development time for someone who wants to write code that runs on multiple platforms, right?
Yes, I am aware that people like the easy way. I'm also aware that the easy way doesn't always cut it... That and the OP didn't say anything about multiple platforms.

Sorry, but I'm a bottom up kind of a guy when it comes to learning new things...
I was using Linux Mint 15, soon to be using Linux Mint 16. There was one website that provided the pre-built wxWidgets 3.0.0 libraries.

What can you do with wxWidgets3.0.0 that you can not do with Qt5.2? And vise versa?

EDIT: Does Cinder support GUI?
Last edited on
closed account (o1vk4iN6)
Qt doesn't have one either ... Qt just happens to provide their own one

That by definition means Qt does have one..

All of wxWidgets are third party and from the ones I've tried none of them are very intuitive or worth your time.
I have visited a website with precompiled wxWidgets libraries, and want to visit it again to download the libraries in an attempt to try wxWidgets.

Does anyone know of a website with precompiled libraries?
I found the precompiled libraries.

I have not tried to use the libraries yet.

Once I (and if) get wxWidgets and Qt to work, I will experiment and decide which one to use (or maybe even learn how to use both).
I am going to start learning how to use the Qt libraries.
Topic archived. No new replies allowed.