Элемент интерфейса
Элеме́нт интерфе́йса — примитив графического интерфейса пользователя, имеющий стандартный внешний вид и выполняющий стандартные действия.

Другие названия: элемент управления, ви́джет (), контро́л ().

Происхождение термина «виджет» 
Употребляется примерно с 1920-х годов в американском английском для обозначения простой, но необходимой вещи, маленького изделия, название которого временно забыто говорящим. Online Etymology Dictionary предполагает, что на его форму могло повлиять слово  или же оно происходит от  — «этот, как его». Другие словари предполагают словослияние «window gadget» (), также произошедшее в начале XX века.

Слово «виджет» также используется и как название класса вспомогательных мини-программ — графических модулей, которые размещаются в рабочем пространстве соответствующей родительской программы и служат для украшения рабочего пространства, развлечения, решения отдельных рабочих задач или быстрого получения информации из интернета без помощи веб-браузера.

Типовые элементы интерфейса 
 аккордеон ()
 кнопка ()
 сдвоенная кнопка (split button) — кнопка, вызывающая список со вторичным(и) действием(и) (кнопками)
 радиокнопка ()
 флаговая кнопка ()
 кнопка-переключатель (toggle button) — может находиться в одном из двух состояний: активна или неактивна
 значок (иконка, )
 список ()
 дерево — иерархический список ()
 раскрывающийся список ()
 метка ()
 поле редактирования ()
 элемент для отображения табличных данных ()
 меню ()
 главное меню окна ( или menu bar)
 контекстное меню ()
 ниспадающее меню ()
 окно ()
 диалоговое окно ()
 модальное окно ()
 панель ()
 вкладка ()
 панель инструментов ()
 полоса прокрутки ()
 ползунок ()
 строка состояния ()
 всплывающая подсказка ()

Встречаются и другие элементы управления, которые могут не входить в некоторые наборы:
 Радиальное меню (pie menu или radial menu) — кольцевое меню вокруг курсора. Выбор пункта меню осуществляется движением курсора в направлении пункта меню.
 Кнопка последовательного выбора — элемент, значение в котором выбирается последовательным нажатием мыши по нему. В отличие от раскрывающегося списка, такая кнопка не позволяет видеть другие значения, кроме выбранного.
 Счётчик — двунаправленный вариант для числовых значений. Нажатие на кнопку позволяет изменить значение параметра на единицу в большую или меньшую сторону.
 Heads-up display — отображение поверх всех элементов значения каких-то параметров либо важных сообщений.
 Пузырь — подсказка наподобие филактера в комиксах, которая указывает на элемент — источник сообщения.
 Валкодер — вращающийся элемент управления наподобие ручки настройки во многих радиоприёмниках. Может быть как одно-, так и многооборотным.
 Скрываемый виджет — элемент, позволяющий скрыть часть элементов управления, когда они не используются.
 Индикатор уровня (Level Indicator) — элемент для индикации значения какой-либо величины. Иногда вместо него используется индикатор процесса, но некоторые руководства (к примеру, HIG от Apple) запрещают подобную практику.

Библиотеки элементов интерфейса 
В каждой оконной системе существует свой набор «родных» элементов с интерфейсом низкого уровня для работы с ними. 
Одни библиотеки элементов управления — это высокоуровневые «обёртки» к имеющимся стандартным виджетам, упрощающие работу с ними и расширяющие их функциональность. 
Другие предоставляют свой единый программный интерфейс для программирования интерфейса пользователя в нескольких платформах или оконных системах и с целью обеспечения кроссплатформенности приводят их к единому для всех платформ API. 
Третьи предоставляют кроссплатформенные возможности за счёт собственной, платформонезависимой, реализации элементов управления.

 Кроссплатформенные, на основе Java
 Standard Widget Toolkit — в составе проекта Eclipse
 Swing — разработка Sun, компонента Java Foundation Classes (JFC) на основе AWT
 AWT — частично устаревший Abstract Windowing Toolkit (Sun, 1995)
 JavaFX — платформа для разработки RIA на Java

 Кроссплатформенные, на основе C/C++, с возможностью использования в других языках
 Tk
 GTK+
 Qt
 wxWidgets (wxWindows)
 IUP
 FOX toolkit
 FLTK

 Кроссплатформенные, на основе Pascal
 LCL
 CLX — адаптация интерфейса Qt для Borland Delphi & Kylix

 Кроссплатформенные, на основе AJAX
 Dojo
 ExtJS
 YAHOO User Interface library
 Под AmigaOS
 Intuition
 Reaction
 MUI (Magic User Interface)

 Под AROS
 Zune

 Под DOS
 Turbo Vision — в составе Borland Turbo Pascal 6.0/7.0, текстовый интерфейс
 Zinc — библиотека для Borland C++

 Под Microsoft Windows
 Windows API
 Microsoft Foundation Classes
 Windows Template Library
 Object Windows Library (Borland Pascal 7.0, графический интерфейс)
 Visual Component Library (Borland Delphi)
 Windows Forms
 Windows Presentation Foundation (или Avalon)

 Под Unix — для X Window System
 Xlib
 Xt
 Xaw
 Motif (Open Motif, LessTif)

 Под BREW
 BUIW

 Графический интерфейс для игр
 MyGUI
 GWEN
 CEGUI

См. также 

 Гаджет
 Портлет
 Скин
 GUI-конструктор

Примечания

Ссылки 
 Программа XWidget для операционной системы Windows
 Fox-Toolkit 
 Терминология GUI-проектирования