
A graphical user interface builder (or GUI builder), also known as GUI designer or sometimes RAD IDE, is a
software development tool
A programming tool or software development tool is a computer program that is used to develop another computer program, usually by helping the developer manage computer files. For example, a programmer may use a tool called a source code editor ...
that simplifies the creation of
GUIs by allowing the designer to arrange
graphical control elements (often called widgets) using a
drag-and-drop WYSIWYG
In computing, WYSIWYG ( ), an acronym for what you see is what you get, refers to software that allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed document, web ...
editor. Without a GUI builder, a GUI must be built by manually specifying each widget's parameters in the source code, with no visual feedback until the program is run. Such tools are usually called the term
RAD IDE.
User interfaces are commonly programmed using an
event-driven architecture
Event-driven architecture (EDA) is a software architecture paradigm concerning the production and detection of Event (computing), events. Event-driven architectures are Continuous design, evolutionary in nature and provide a high degree of fault to ...
, so GUI builders also simplify creating event-driven code. This supporting code connects
software widget
A software widget is a relatively simple and easy-to-use software application or software component, component made for one or more different software platforms.
A Desk accessories, desk accessory or applet is an example of a simple, Standalone ...
s with the outgoing and incoming
events that trigger the functions providing the application logic.
Some graphical user interface builders automatically generate all the
source code
In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer.
Since a computer, at base, only ...
for a
graphical control element. Others, like
Interface Builder or
Glade Interface Designer, generate
serialized object instances that are then loaded by the application.
List of GUI builders
C language based
*
GTK
GTK (formerly GIMP ToolKit and GTK+) is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both Free software, free and ...
/
Glade Interface Designer
*
Motif
*
XForms (toolkit) fdesign
*
Intrinsics
C# based
*
UWP /
Windows Presentation Foundation /
WinForms
** Microsoft
Visual Studio XAML Editor,
XAML based GUI layout
** Microsoft
Expression Blend
**
SharpDevelop
*
Xamarin.Forms /
.NET Core
**
Xamarin Studio
C++ based
*
UWP /
Windows Presentation Foundation /
WinForms
** Microsoft
Visual Studio XAML Editor,
XAML based GUI layout
**
Microsoft Blend
Microsoft Blend for Visual Studio (formerly Microsoft Expression Blend) is a User interface builder, user interface design tool developed and sold by Microsoft for creating graphical interfaces for web and desktop applications that blend the fea ...
*
Qt (toolkit)
Qt ( pronounced "cute") is a cross-platform application development framework for creating graphical user interfaces as well as Cross-platform software, cross-platform applications that run on various software and hardware platforms such as L ...
**
Qt Creator
Qt Creator is a cross-platform C++, JavaScript, Python and QML integrated development environment (IDE) which simplifies GUI application development. It is part of the SDK for the Qt GUI application development framework and uses the Q ...
*
FLTK
**
FLUID
In physics, a fluid is a liquid, gas, or other material that may continuously motion, move and Deformation (physics), deform (''flow'') under an applied shear stress, or external force. They have zero shear modulus, or, in simpler terms, are M ...
*
JUCE
JUCE is an open-source software, open-source cross-platform C++ application framework, used for the development of desktop and mobile applications. JUCE is used in particular for its graphical user interface, GUI and Plug-in (computing), plug-in ...
*
U++
*
wxWidgets
wxWidgets (formerly wxWindows) is a widget toolkit and tools library for creating graphical user interfaces (GUIs) for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with no s ...
**
wxFormBuilder
Objective-C / Swift based
*
Cocoa (modern) and
Carbon
Carbon () is a chemical element; it has chemical symbol, symbol C and atomic number 6. It is nonmetallic and tetravalence, tetravalent—meaning that its atoms are able to form up to four covalent bonds due to its valence shell exhibiting 4 ...
(deprecated).
**
Xcode
Xcode is a suite of developer tools for building apps on Apple devices. It includes an integrated development environment (IDE) of the same name for macOS, used to develop software for macOS, iOS, iPadOS, watchOS, tvOS, and visionOS. It w ...
*
GNUstep
GNUstep is a free software implementation of the Cocoa (formerly OpenStep) Objective-C frameworks, widget toolkit, and application development tools for Unix-like operating systems and Microsoft Windows. It is part of the GNU Project.
GNUst ...
(formerly
OpenStep
OpenStep is an object-oriented application programming interface (API) specification developed by NeXT. It provides a framework for building graphical user interfaces (GUIs) and developing software applications. OpenStep was designed to be plat ...
)
**
Gorm
Gorm may refer to:
Computing
* Gorm (computing), a rapid application development tool
* GORM, the "fantastic ORM library" for the Go programming language
* Grails Object-Relational Mapping, see
People
* Gorm the Old (died 958), Danish king
* Gor ...
Java based
*
Android Studio
Android Studio is the official integrated development environment (IDE) for Google's Android operating system, built on JetBrains' IntelliJ IDEA software and designed specifically for Android development. This is available for download on W ...
, XML-based GUI layout
*
NetBeans GUI design tool
HTML/JavaScript based
*
Adobe Dreamweaver — Obsolete as of 2022
Object Pascal based
*
Delphi
Delphi (; ), in legend previously called Pytho (Πυθώ), was an ancient sacred precinct and the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient Classical antiquity, classical world. The A ...
/ VCL (
Visual Component Library
The Visual Component Library (VCL) is a visual component-based object-oriented framework for developing the user interface of Microsoft Windows applications. It is written in Object Pascal.
History
The VCL was developed by Borland for use i ...
)
*
Lazarus / LCL (
Lazarus Component Library)
Tk framework based
*
Tk (framework) for
Tcl
**
ActiveState Komodo (No longer has a GUI builder)
** TKproE (TCL/TK Programming Environment)
Visual Basic based
*
UWP /
Windows Presentation Foundation /
WinForms
** Microsoft
Visual Studio XAML Editor,
XAML based GUI layout
** Microsoft
Expression Blend
Other tools
*
Adobe Animate
*
App Inventor for Android
*
AutoIt
*
Axure RP
*
Creately
*
Embedded Wizard
*
GEM
*
Interface Builder
*
LucidChart
*
OpenWindows
*
Resource construction set
*
Stetic
*
Scaleform
*
Wavemaker
List of development environments
IDEs with GUI builders ( RAD IDEs)
*
4D
*
ActiveState Komodo (No longer has a GUI builder)
*
Android Studio
Android Studio is the official integrated development environment (IDE) for Google's Android operating system, built on JetBrains' IntelliJ IDEA software and designed specifically for Android development. This is available for download on W ...
*
Anjuta
*
AutoIt3
*
C++Builder
C++Builder is a rapid application development (RAD) environment for developing software in the C++ programming language. Originally developed by Borland, it is owned by Embarcadero Technologies, a subsidiary of Idera. C++Builder can compile ...
*
Clarion
*
Code::Blocks
*
CodeLite
*
dBase
dBase (also stylized dBASE) was one of the first database management systems for microcomputers and the most successful in its day. The dBase system included the core database engine, a query system, a Form (programming), forms engine, and a pr ...
*
Delphi/RAD Studio
*
Embedded Wizard
*
Eclipse
An eclipse is an astronomical event which occurs when an astronomical object or spacecraft is temporarily obscured, by passing into the shadow of another body or by having another body pass between it and the viewer. This alignment of three ...
*
Gambas
*
IntelliJ IDEA
*
InForm
Inform is a programming language and design system for interactive fiction originally created in 1993 by Graham Nelson. Inform can generate programs designed for the Z-machine, Z-code or Glulx virtual machines. Versions 1 through 5 were released ...
*
JDeveloper
JDeveloper is a freeware IDE supplied by Oracle Corporation. It offers features for development in Java, XML, SQL and PL/SQL, HTML, JavaScript, BPEL and PHP. JDeveloper covers the full development lifecycle from design through coding, debug ...
*
KDevelop
*
LabWindows/CVI
*
LANSA
*
Lazarus
*
Liberty BASIC
Liberty BASIC (LB) is a commercial computer programming language and integrated development environment (IDE). It has an BASIC interpreter, interpreter, developed in Smalltalk, which recognizes its own Programming language#Dialects, flavors and ...
*
Microsoft Visual Studio
*
MonoDevelop
*
MSEide+MSEgui
*
MyEclipse
*
NetBeans
NetBeans is an integrated development environment (IDE) for Java (programming language), Java. NetBeans allows applications to be developed from a set of modular software components called ''modules''. NetBeans runs on Microsoft Windows, Windows, ...
*
OutSystems
*
PascalABC.NET
*
Projucer
*
Purebasic
*
Qt Creator
Qt Creator is a cross-platform C++, JavaScript, Python and QML integrated development environment (IDE) which simplifies GUI application development. It is part of the SDK for the Qt GUI application development framework and uses the Q ...
*
SharpDevelop
*
Softwell Maker
*
U++
*
VB6
*
WinFBE
*
Xcode
Xcode is a suite of developer tools for building apps on Apple devices. It includes an integrated development environment (IDE) of the same name for macOS, used to develop software for macOS, iOS, iPadOS, watchOS, tvOS, and visionOS. It w ...
*
Xojo
See also
*
Rapid application development
Rapid application development (RAD), also called rapid application building (RAB), is both a general term for adaptive software development approaches, and the name for James Martin's method of rapid development. In general, RAD approaches to ...
(RAD)
*
Human interface guidelines (HIG)
*
Human interface device
*
User interface markup language
A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a ...
*
User interface modeling
*
Design-Oriented Programming
*
Linux on the desktop
References
{{Reflist
Graphical control elements
builder
*