A GUI toolkit ( English toolkit , tool kit, also called widget toolkit , widget library or UX library ) is a program library that is used to program graphical user interfaces in desktop applications . A GUI toolkit provides a set of controls ( widgets ).
GUI toolkits make it easier for a programmer to create graphical user interfaces because he does not have to worry about developing widgets or about the interface to the system environment. A developer does not need to program typical calls to the platform himself, as these are provided by the GUI toolkit.
In addition, some GUI toolkits also provide additional programming tools and aids such as development environments that simplify the design of graphical interfaces and dialogs. A well-known example is the designer of the Qt toolkit.
Many GUI toolkits have their own rendering engine, which is responsible for drawing the controls, and their own layout manager , which is responsible for arranging the elements. Alternatively, the underlying platform (e.g. the operating system) is used for these tasks.
Well-known GUI toolkits
Well-known GUI toolkits include:
- GTK + (in Java e.g. via SWT )
- Swing (in Java)
- FireMonkey (FMX, in Delphi)
- Lazarus Component Library (in Free Pascal)
- Microsoft Foundation Classes (MFC)
- Visual Component Library (VCL, in Delphi)
- Win32 (WinAPI)
- Windows Presentation Foundation (WPF)
- Windows Forms (.NET)
- Matthias Fuchs: Comparison of Cross-Platform GUI Toolkits: WinForms, GTK +, wxWidgets, Qt, Swing , VDM Verlag Dr. Müller, 2010, ISBN 978-3639251647
- Michael Lauer: Python and GUI Toolkits , mitp, 2002, ISBN 978-3826608445