Данная статья предоставляет список инструментариев графического интерфейса (также известных как GUI фреймворки ), используемых для создания графического интерфейса пользователя, отсортированных по их связям с различными операционными системами .
Название | Windows | macOS | Unix-like | Язык программирования | Лицензия |
---|---|---|---|---|---|
AWT | cross-platform | Java | |||
CEGUI | Да | Да | Да | C++ | MIT |
Cocoa | Нет | Да | Нет | Objective-C | Proprietary |
Elementary | Да | Да | Да | C | LGPL, BSD |
FLTK | Да | Да | Да | C++ | LGPL |
Fox toolkit | Да | Нет | Да | C++ | LGPL |
Fyne | cross-platform | Go | BSD | ||
GNUstep | Да | Да | Да | Objective-C | LGPL |
GTK | Да | Да | Да | C | LGPL |
Kivy | cross-platform | Python | MIT | ||
LCL | Да | Да | Да | Object Pascal (Free Pascal) | LGPL |
IUP | Да | Нет | Да | C | MIT |
Juce | Да | Да | Да | C++ | GPL, proprietary |
LessTif | Нет | Нет | Да | C | LGPL |
MFC | Да | Нет | Нет | C++ | Proprietary |
Nana C++ | Да | Нет | Да | C++ | Boost license |
OWL (superseded by VCL) | Да | Нет | Нет | C++ (Borland C++) | Proprietary |
Pivot (WTK) | cross-platform | Java | Apache License | ||
CGI Studio[3] | Да | Да | Да | C++ | proprietary |
Qt | Да | Да | Да | C++ | LGPL, proprietary |
Rogue Wave Views | Да | Нет | Да | C++ | proprietary |
Shoes (GUI toolkit) | cross-platform | Ruby | MIT | ||
Swing | cross-platform | Java | |||
Tk | Да | Да | Да | C | BSD |
TnFOX | Да | Да | Да | C++ | LGPL |
Ultimate++ | Да | Да | Да | C++ | BSD |
VCL (supersedes OWL) | Да | Нет | Нет | Object Pascal (Delphi) | Proprietary |
WTL | Да | Нет | Нет | C++ | Microsoft Public License |
wxWidgets | Да | Да | Да | C++ | WxWindows license |
Обратите внимание, что X Window System предназначалась в первую очередь для Unix-подобных операционных систем, но теперь она работает и в Microsoft Windows с использованием, например, Cygwin, поэтому некоторые или все эти наборы инструментов также можно использовать под Windows.
Общий
Full-stack framework
Ресурсные
Больше не разрабатываются
Toolkit | Initial release | Latest release | Main language | Bindings | Tools | License | Pros | Cons | Back-end |
---|---|---|---|---|---|---|---|---|---|
ATL, WTL | 2004 | C++ | Visual Studio | not portable | |||||
AWT | 1995 | Java | portable | ||||||
CEGUI | 2004 | Шаблон:Latest stable software release/CEGUI | C++ | Python, Lua (using tolua++) | CEED | MIT License | Free license, fast, cross-platform, portable, free GUI editing tool | ||
Clutter | 2006 | C | Perl, Python, C#, C++, Vala, Ruby | LGPL | GTK and WebKit embedding | ||||
CLX | C++ | ||||||||
Elementary | 2007 (EFL: 2001) | 2016 | C | JavaScript, Python, Vala, C++ | editje, edje | LGPL | Portable, stable, fast, finger-friendly | ||
FLTK | 1998 | 2019 | C++ | Python (pyFLTK), Perl (FLTK.pm), Ruby (Ruby/FLTK), Tcl (Tcl Fltk), Guile (guile-fltk), Eiffel (IFLTK) | FLUID (Fast Light UI Designer) | LGPL (with an exception that allows static linking) | fast, small enough to static link | limited widget selection | |
Flutter | 2017 | Dart | |||||||
FOX | 1997 | C++ | Ruby (FXRuby), Python (FXPy), Eiffel (EiffelFox) | consistent across platforms | non-native look and feel | ||||
Fyne | 2018 | 2020 (1.3.2) | Go | BSD | consistent across platforms, no runtime dependency | requires OpenGL | |||
GLUI | C++ | ||||||||
GNUstep | 1994 | 2017 | Objective-C | Java, Ruby, Scheme | Gorm (computing) | GPL for the apps, LGPL for the libs | Portable, free license | Native on macOS (with Cocoa) | X11, Win32, Wayland |
GTK | 1997 | Шаблон:Latest stable software release/GTK+ | C | C++ (gtkmm), Perl (Gtk2-perl), Ruby (ruby-gtk2), Python (PyGTK), Haskell (Gtk2Hs), Java (java-gnome) (not available for Microsoft Windows), C# (Gtk#), PHP (PHP-GTK), Ada (GTKAda), D (gtkD), FreeBasic (GladeToBac), Go (go-gtk), OCaml (lablgtk), JavaScript (Gjs, Seed (programming)), Fortran (gtk-fortran), Lua (lua-lgi), R (RGtk2) and others via GTK-server | Glade | LGPL | Portable, free license | Partly native only.[7] | |
IUP | 1992 | 2019 | C | Lua (IupLua) | LEDC: a compiler for LED | MIT | Portable, lightweight, use the native API, native look&feel, free licence | Non‑Unicode (only plain ASCII) | |
Juce | 2004 | C++ | Jucer | GPL, commercial | Cross-platform, with additional audio plug-in wrapping tools (VST, RTAS, AAX etc.) | ||||
MFC, WinAPI | 1992 | C++ | Visual Studio | not portable (but Wine implements it for X Window) | |||||
Motif, Lesstif | 1980s | C | BX Pro | ||||||
Nana C++ | 2007 | Шаблон:LSR[8] | C++ | VisualStudio, Dev-C++, Code::Blocks, GCC | portable, lightweight, modern C++ style | ||||
NWSTK | 2020 | SuperC(C++ Nex) | |||||||
Qt | 1991 | Шаблон:Latest stable software release/Qt | C++ | Ruby (QtRuby), Python (PyQt, PySide, PythonQt), Ada (QtAda), c# ( Qyoto), Java (Qt Jambi), Pascal ( FreePascal Qt4 ), Perl (Perl Qt4), PHP(PHP-Qt), Haskell (Qt Haskell), Lua (lqt, QtLua), Dao ( DaoQt), Tcl ( qtcl ), Common Lisp (CommonQt), D (QtD), Harbour (hbqt) | Qt Designer, Qt Creator | GPL, LGPL.[9] | Portable, rich widget set, GUI builder, free license, stable API | Partially native only.[10][11][12] | |
Rogue Wave Views | 1993 | 2014 (5.8) | C++ | ivfstudio | proprietary | portable (Windows, Unix-like), good support | commercial | ||
Shoes (GUI toolkit) | 2007 | 2010 | Ruby | MIT license/Open source | Simplicity, ease of use | ||||
Swing | 1996 | Java | Eclipse, NetBeans | GPL for OpenJDK | Portable (Java), advanced widgets, GUI builders | ||||
SWT | Java | D (DWT) | Eclipse | portable | |||||
Tk | 1991 | 2015 | C, Tcl | Ruby (RubyTk), Python (Tkinter), Perl (Perl/Tk), Ada (TASH), Common Lisp (LTk), Erlang (etk), ... | | BSD | very portable, many language bindings | |||
Ultimate++ | 2004 | 2022 | C++ | theIDE | BSD | portable, NTL, free license | |||
VCF | C++ | BSD | free license | ||||||
VCL | Delphi | ||||||||
Windows Forms | CLI languages | CLI languages | Expression, Visual Studio | portability issues, no MVC | |||||
WPF, XAML, Silverlight | 2007 | CLI languages | CLI languages | Expression, Visual Studio | Portability issues | ||||
wxWidgets | 1992 | Шаблон:Latest stable software release/wxWidgets | C++ | C++ (native), Ruby (wxRuby), Python (wxPython), Perl (wxPerl), Java (wxJava, jwx!), Lua (wxLua), Tcl(wxTCL), JavaScript (GLUEscript), Smalltalk (wxSqueak), Erlang (wxErlang), Haskell (wxHaskell), C (wxC), D (wxD), .NET Framework (wxNet), Common Lisp (wxCL), Basic (wxBasic), BlitzMax (wxMax), Euphoria (wxEuphoria), Ada (wxAda), Pike (wxPike) | VisualWx, Boa Constructor, PythonCard, Spe, XRCed, wxGlade, wxFormBuilder, DialogBlocks ($), wxDesigner ($) | wxWindows License | Portable, rich widget set, free licence, semantic similarities to MFC make migration easy. | ||
Xaw, Athena | 1983 | 1.0.13[13] | C | MIT X11 | |||||
XUL | XML, JavaScript | portable | |||||||
XVT | 1989 | 2010 | C and C++ | Design for C and architect for C++ | Proprietary | Cross-platform, rich widget set, C and C++ GUI builders, very stable | |||
Toolkit | Initial release | Latest release | Main language | Bindings | Tools | License | Pros | Cons | Back-end |
![]() | На эту статью не ссылаются другие статьи Википедии. |