|Build Rich GUI Apps In Python With Aid From Delphi|
|Written by Nikos Vaggalis|
|Tuesday, 17 January 2023|
Embarcadero has made its Delphi-based GUI libraries, VCL and FireMonkey (FMX), available for Python. These libraries are meant to be better and more adequate than the Tkinter ones that ship with the default Python distribution.
So what do these new libraries have to offer? For starters, VCL is focused on native Windows development, while FireMonkey brings a flexible GUI framework to Windows, Linux, macOS, and even Android.
They both use the GPU via DirectX or OpenGL for hardware accelerated rendering and include a rich styling system.
VCL supports :
Win32 & Win64 x86 architectures
while FireMonkey supports:
Win32 x86, Win64 x86, Linux64 x86, Android64, macOS64 and macM1 architectures
As said, especially under FMX you can build your Python GUI based apps on Android too. We explored another Python Android integration in Java Or Python For Android - Why Not Both! reporting on the Chaquopy Python SDK which allows you to write Android applications in full in Python or partially, together with Java.
At this point it's important to make the distinction between the Delphi and the Python builds. VCL is the Delphi build and its Python counterpart is the DelphiVCL4Python, while the other pair is FMX and DelphiFMX4Python.
They both give Python developers access to the VCL GUI framework from Python with no need to use Delphi in the development process. That bi-directional bridge from the Python modules to the Delphi libraries and vice versa is happening through the Python4Delphi library which wraps up the Python DLL into Delphi and Lazarus (FPC). The following diagram makes the process clear:
Finally I should also mention that despite the libraries being free for commercial use as well as freely redistributable, they are offered under a propriety license and not an Open Source one. You can for instance find the DelphiFMX4Python license here.
Yet another framework for Python, you say. It's true that there's tons of GUI frameworks for Python but it's better to have more choice than less. The answer, as always, is to pick the right tool for the job at hand. In some situations module A might be a better fit than module B. As far as these Embarcadero offerings go, I must say that the quality of the GUI components is first class.
Summer SALE Kindle 9.99 Paperback $10 off!!
or email your comment to: email@example.com
|Last Updated ( Tuesday, 17 January 2023 )|