I think it's worth it. We recently used Qt because it allowed us to make a cross-platform GUI that looks good on Linux, Windows and Mac. This is a kind of complex learning curve to figure out how to use QLayouts correctly , but after you make your GUI, you will look great on different platforms, with many different font sizes and with many different window sizes. I like the way Qt allows you to create applications that use their own widgets with a natural look. Applications built with Qt will look like they belong regardless of which platform they run on. Another great feature is that the Qt structure is quite small, and you can simply include Qt DLL files in your application binary directory to simplify the installation process for your application and make life easier for everyone (no virtual machines to install, no more 600 MB download).
I would recommend using Qt directly from C ++. It has wrappers on it, but it's hard to believe that these wrappers will support every function and allow you to subclass Qt classes.
You can make a cross-platform GUI using C # WinForms using Mono on Linux and Mac. But Mono WinForms is not supported, the results look very bad, and there are some distorting errors on macOS.
source share