3 ms·
VB and early Delphi (say Delphi 7 and earlier) have their pros and cons compared to current(ish) Qt. I don't know about modern Delphi but i do know about modern
by badsectoracula 4y ago
VB and early Delphi (say Delphi 7 and earlier) have their pros and cons compared to current(ish) Qt. I don't know about modern Delphi but i do know about modern Lazarus (which is basically an open source Delphi) and have worked in similar complex desktop applications in both.
Lazarus beats Qt hands down in terms of efficiency and ease of use. I've found myself multiple times working with a Qt codebase thinking how much time i am wasting doing things by hand in an annoying way that could be done automatically by Lazarus. Qt's GUI designer is barely there and even something like wxFormBuilder for wxWidgets (another tool and toolkit i used at the past for similar types of applications) was better. Lazarus is much better on that front too with multiple approaches to lay out controls, both manually and automatically (and the approach in both frameworks show how one -Qt- was designed with a code-first approach and the other -Lazarus/LCL- with a WYSIWYG-first approach), though the anchor editor in Lazarus is kinda awkward (IMO it could be done in-designer instead of using a separate window). Things like designing reusable compound widgets are a code-free drag-and-drop manner in Lazarus (can even make per-instance modifications).
Note that all above are about Qt Widgets applications, i never used QML/QtQuick/etc (not my choice, but then again i'd also stick with Qt Widgets myself if i had to use Qt). Also the sort of applications i refer to are game engine tools since that is basically what i do.
Qt is better documented and much more polished though. Also Lazarus has a lot of "papercut" microissues that by themselves aren't that big of a problem but as a whole can give a bad impression. Finally Qt is better out of the box when it comes to being cross platform - Lazarus' native macOS support still has issues and some applications prefer to use the Qt backend (which also receives development from Linux developers) instead of the Cocoa backend for macOS.
QtCreator is neat but i haven't used it much. I found it a bit more awkward than Lazarus when i tried it out of curiosity (a friend insisted that it was the same as C++ Builder - no, it wasn't), but i think it is better than using Qt from anything else if for no other reason than having the IDE and designer "know" about the underlying framework (or at least i hope it does). I do not think you can do stuff like edit non-visual objects in it though and i'm not sure how you'd add new widgets in the designer.
- markus_zhang 4y agoThanks for sharing. Looks like there are different views. However my target is also game tools creation (editors) so your opinion might matter a lot.