stringtranslate.com

Графический виджет

gtk3-demo, программа для демонстрации виджетов в GTK+ версии 3

Графический виджет ( также графический элемент управления или элемент управления ) в графическом пользовательском интерфейсе — это элемент взаимодействия , такой как кнопка или полоса прокрутки . Элементы управления — это программные компоненты , с которыми пользователь компьютера взаимодействует посредством прямого манипулирования для чтения или редактирования информации о приложении. Библиотеки пользовательского интерфейса, такие как Windows Presentation Foundation , Qt , GTK и Cocoa , содержат набор элементов управления и логику для их отображения. [1]

Каждый виджет обеспечивает определенный тип взаимодействия пользователя с компьютером и отображается как видимая часть графического интерфейса пользователя приложения, как определено темой и визуализировано движком рендеринга. Тема заставляет все виджеты придерживаться единого эстетического дизайна и создает ощущение общей сплоченности. Некоторые виджеты поддерживают взаимодействие с пользователем, например, метки, кнопки и флажки . Другие действуют как контейнеры , которые группируют добавленные к ним виджеты, например, окна , панели и вкладки.

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

Конструкторы графических пользовательских интерфейсов облегчают создание графических интерфейсов в режиме WYSIWYG , используя язык разметки пользовательского интерфейса . Они автоматически генерируют весь исходный код для виджета из общих описаний, предоставленных разработчиком, обычно посредством прямой манипуляции .

История

Около 1920 года слово widget вошло в американский английский как общее название любого полезного устройства, в частности продукта, произведенного для продажи; гаджет .

В 1988 году термин «виджет» был засвидетельствован в контексте проекта Athena и X Window System . В An Overview of the X Toolkit Джоэла МакКормака и Пола Асенте говорится: [2]

Набор инструментов предоставляет библиотеку компонентов пользовательского интерфейса («виджетов»), таких как текстовые метки, полосы прокрутки, кнопки команд и меню; позволяет программистам писать новые виджеты; и предоставляет связующее звено для сборки виджетов в полноценный пользовательский интерфейс.

В том же году в руководстве X Toolkit Widgets - C Language X Interface Ральфа Р. Свика и Терри Вайсмана говорится: [3]

В X Toolkit виджет представляет собой комбинацию окна X или подокна и связанной с ним семантики ввода и вывода.

Наконец, в том же году Ральф Р. Суик и Марк С. Акерман объясняют, откуда появился термин «виджет» : [4]

Мы выбрали этот термин, поскольку все другие общие термины были перегружены неподходящими коннотациями. Однако мы предлагаем скептикам наблюдение, что основная реализация виджета — это его связанное окно X, и общая начальная буква не бесполезна.

Использование

Пример включенных и выключенных виджетов; рамка внизу отключена, они выделены серым цветом.

Любой виджет отображает информационную структуру, которую может изменять пользователь, например, окно или текстовое поле . Определяющей характеристикой виджета является предоставление единой точки взаимодействия для прямого манипулирования данным типом данных. Другими словами, виджеты — это базовые визуальные строительные блоки, которые, объединенные в приложении, содержат все данные, обрабатываемые приложением, и доступные взаимодействия с этими данными.

Виджеты GUI — это графические элементы, используемые для построения человеко-машинного интерфейса программы. Виджеты GUI реализуются как программные компоненты . Наборы инструментов для виджетов и программные фреймворки, такие как, например, GTK+ или Qt , содержат их в программных библиотеках , чтобы программисты могли использовать их для построения графических интерфейсов для своих программ.

Семейство общих повторно используемых виджетов было разработано для хранения общей информации на основе исследований Palo Alto Research Center Inc. для Xerox Alto User Interface. Различные реализации этих общих виджетов часто упаковываются вместе в наборы инструментов для виджетов , которые программисты используют для создания графических пользовательских интерфейсов (GUI). Большинство операционных систем включают набор готовых к настройке виджетов, которые программист может включить в приложение, указав, как оно должно себя вести. [5] Каждый тип виджета обычно определяется как класс в объектно-ориентированном программировании ( ООП ). Поэтому многие виджеты являются производными от наследования классов.

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

Преимущество отключения недоступных элементов управления вместо их полного скрытия заключается в том, что пользователи видят, что элемент управления существует, но в данный момент недоступен (подразумевая, что изменение какого-либо другого элемента управления может сделать его доступным), вместо того, чтобы оставлять пользователя в неведении относительно того, где вообще найти элемент управления. Во всплывающих диалоговых окнах кнопки могут отображаться серыми вскоре после появления, чтобы предотвратить случайное нажатие или непреднамеренное двойное нажатие.

Иногда виджеты квалифицируются как виртуальные, чтобы отличить их от их физических аналогов, например, виртуальных кнопок , которые можно нажимать указателем , и физических кнопок, которые можно нажимать пальцем (например, на компьютерной мыши ).

Связанная (но другая) концепция — это виджет рабочего стола , небольшое специализированное приложение с графическим интерфейсом, которое предоставляет некоторую визуальную информацию и/или легкий доступ к часто используемым функциям, таким как часы, календари, агрегаторы новостей, калькуляторы и заметки рабочего стола. Эти виды виджетов размещаются на движке виджетов .

Список общих виджетов

Различные виджеты, показанные в Ubuntu
Виджеты Qt , отрисованные в соответствии с тремя различными скинами (художественный дизайн): Plastik, Keramik и Windows

Отбор и экспозиция коллекций

Навигация

Ввод текста/значения

Выход

Контейнер

Смотрите также

Ссылки

  1. ^ "Microsoft: Графические элементы". msdn.microsoft.com . Microsoft . Получено 27 апреля 2015 г. .
  2. ^ МакКормак, Джоэл; Асенте, Пол (1988). «Обзор инструментария X». Труды 1-го ежегодного симпозиума ACM SIGGRAPH по программному обеспечению пользовательского интерфейса . стр. 46–55. doi :10.1145/62402.62407. ISBN 0897912837. S2CID  12924752.
  3. ^ Суик, Ральф Р.; Вайсман, Терри (1988). Виджеты X Toolkit — Интерфейс языка C X. стр. 1.
  4. ^ Ральф Р. Суик, Марк С. Акерман (1988). «X Toolkit: больше кирпичиков для создания пользовательских интерфейсов –или– виджетов для найма». USENIX Winter . стр. 221–228 . Получено 20 ноября 2022 г.
  5. ^ "Что такое виджет? - Определение с WhatIs.com". WhatIs.com . Получено 2020-06-03 .
  6. ^ https://material-ui.com/demos/drawers/ Компонент React Drawer - Material-UI

Внешние ссылки