6 ms·
As someone who works with Windows forms, I'm wondering where the visual designer to place widgets is.
by barking 8y ago
As someone who works with Windows forms, I'm wondering where the visual designer to place widgets is.
- basic1 8y agoQt Designer
- candiodari 8y agoIt's called Qt designer: https://youtu.be/Dmo8eZG5I2w https://youtu.be/Dmo8eZG5I2w
- deleted 8y ago[deleted]
- deleted 8y ago[deleted]
- toyg 8y agoIf you use the complete Qt installer, you get QtDesigner. If you use the PyQT-provided wheels and/or you don'want to mess with the whole Qt, then you can separately install QtCreator, which is very simple and embeds QtDesigner.
- AnIdiotOnTheNet 8y agoLooking at a tutorial, it looks like all it does is layout the form for you. That's a shame. Things closer to what the original VB was are sorely missed in modern computing.
- rkeene2 8y agoHere you go: vTcl -- just like Visual Basic 3.0. Also, you get to use Tcl instead of Visual Basic, so even better ! http://vtcl.sourceforge.net/ http://vtcl.sourceforge.net/
- pjmlp 8y agoVisual Basic 6 compiled to actual native code though, while TCL teached me to never use such languages beyond bare scripting tasks. Even Visual Basic 3's P-Code interpreter was faster than TCL string based one.
- meredydd 8y agoWhat was the last version of TCL you used? These days they have an extremely cunning system involving multiple representations: Being TCL, every value is of course canonically a string, but if you do (eg) integer operations the result will be stored only as an integer until its needed as anything else. And the body of a 'proc' will be compiled to bytecode on first use, so subsequent calls will go much faster. One could even add a specialising JIT to this if you wanted to.
- pjmlp 8y agoVersion 8.x, the ones where bytecodes where introduced (1999 - 2003). Thing is, if you want to speak about modern TCL implementations, then the comparison needs to be against VB.NET, with its 64 bit SIMD aware JIT/AOT compilers.
- rkeene2 8y agoAlso, modern Tcl can be compiled to machine code to a large degree thanks to TclQuadCode and LLVM.
- meredydd 8y agoIf you want VB/Delphi-style app builder for Python, can I interest you in Anvil (https://anvil.works https://anvil.works)? It targets the web, but you write all the code (even client-side) in Python. We've had multiple customers describe it as a worthy heir to Delphi :)
- AnIdiotOnTheNet 8y ago> It targets the web Thank you, but no. It doesn't fit the philosophy of the system I'd want to include it in.
- ajuc 8y agoIt gives you ui for connecting signals and slots and configuring stuff as well, but few people use it. And qt singals and slots model is far superior to VB/Delphi style callbacks or c# delegates, but you have to program for a while to get why. Also - layouts in VB/Delphi weren't responsive, layouts made in QtDesigner are.
- toyg 8y ago> ui for connecting signals and slots and configuring stuff as well, but few people use it. I try hard to do that (it saves on boilerplate), but the challenge is always in finding signals and slots with the same precise amount of parameters. Say I trigger a signal with no parameters and I want to connect it to a slot that takes a boolean always with the same value (e.g. a pressed() connected to a setEnabled(bool), where bool should always be True), I can't do that in Designer, it has to be in actual code - a trivial one-liner, sure, but still one more line of technical debt. (INB4 "ur doing it wrong": yes, I know about clicked(bool), toggled(bool) etc, it was just an example to explain the concept.)
- ajuc 8y agoI don't consider connecting signals in xml (via designer) better than connecting them in code. The line is still there, just in different place.
- toyg 8y agoBut the UI changes very rarely, and it’s out of the way most of the time; whereas the class method is always in the way in parts of code that could see a lot of day-to-day activity, migrations (py3...) and so on.
- ajuc 8y agoOn the other hand refactoring is much easier if all your signals are connected in code.
- module0000 8y ago
- jcelerier 8y agoIn addition to what the other said, if you use Qt Quick instead of Qt Widgets you get something which is an order of magnitude more powerful than most of the alternatives : * http://blog.qt.io/blog/2017/07/05/qt-quick-designer-coffee-machine/ http://blog.qt.io/blog/2017/07/05/qt-quick-designer-coffee-m... * http://blog.qt.io/blog/2017/05/24/qt-quick-designer-qt-creator-4-3/ http://blog.qt.io/blog/2017/05/24/qt-quick-designer-qt-creat...