Содержание

RadioButton Класс (System.Windows.Forms) | Microsoft Docs

В следующем примере кода создаются и инициализируются два RadioButton элемента управления в GroupBox . В примере используется CheckedChanged событие для отслеживания RadioButton выбранного объекта и сообщается текст, выбранный RadioButton при нажатии пользователем Button . чтобы выполнить этот пример, вставьте код в Windows форму. Вызов InitializeRadioButtons из конструктора формы или Load метода обработки событий.

RadioButtonЭлемент управления может отображать текст, Image или и то и другое.

Когда пользователь выбирает один переключатель (также известный как переключатель) в группе, другие автоматически очищаются. Все RadioButton элементы управления в данном контейнере, такие как Form , составляют группу. Чтобы создать несколько групп на одной форме, разместите каждую группу в отдельном контейнере, например GroupBox в Panel элементе управления или.

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

Различие состоит в том, что CheckBox одновременно можно выбирать несколько элементов управления, но переключатели являются взаимоисключающими.

Используйте Checked свойство, чтобы получить или задать состояние RadioButton . Внешний вид переключателя можно изменить, чтобы он отображался как кнопка-переключатель или как стандартный переключатель, установив Appearance свойство.

AccessibilityObject

Получает объект AccessibleObject, назначенный элементу управления.

(Унаследовано от Control)
AccessibleDefaultActionDescription

Возвращает или задает описание выполняемого по умолчанию действия элемента управления для использования клиентскими приложениями со специальными возможностями.

(Унаследовано от Control)
AccessibleDescription

Возвращает или задает описание элемента управления, используемого клиентскими приложениями со специальными возможностями.

(Унаследовано от Control)
AccessibleName

Возвращает или задает имя элемента управления, используемого клиентскими приложениями со специальными возможностями.

(Унаследовано от Control)
AccessibleRole

Возвращает или задает доступную роль элемента управления.

(Унаследовано от Control)
AllowDrop

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

(Унаследовано от Control)
Anchor

Возвращает или задает границы контейнера, с которым связан элемент управления, и определяет способ изменения размеров элемента управления при изменении размеров его родительского элемента.

(Унаследовано от Control)
Appearance

Получает или задает значение, определяющее внешний вид переключателя RadioButton.

AutoCheck

Получает или задает значение, показывающее, будет ли автоматически изменяться значение Checked и внешний вид элемента управления, когда он выбирается щелчком.

AutoEllipsis

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

(Унаследовано от ButtonBase)
AutoScrollOffset

Возвращает или задает местоположение, в котором выполняется прокрутка этого элемента управления в ScrollControlIntoView(Control).

(Унаследовано от Control)
AutoSize

Возвращает или задает значение, указывающее, производятся ли изменения размеров элемента управления в соответствии с его содержимым.

(Унаследовано от ButtonBase)
BackColor

Возвращает или задает цвет фона элемента управления.

(Унаследовано от ButtonBase)
BackgroundImage

Возвращает или задает фоновое изображение, отображаемое на элементе управления.

(Унаследовано от Control)
BackgroundImageLayout

Возвращает или задает макет фонового изображения в соответствии с перечислением ImageLayout.

(Унаследовано от Control)
BindingContext

Возвращает или задает значение BindingContext для элемента управления.

(Унаследовано от Control)
Bottom

Возвращает расстояние в пикселях между нижней границей элемента управления и верхней границей клиентской области контейнера.

(Унаследовано от Control)
Bounds

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

(Унаследовано от Control)
CanEnableIme

Получает значение, указывающее, можно ли для свойства ImeMode установить активное значение с целью включения поддержки IME.

(Унаследовано от Control)
CanFocus

Возвращает значение, указывающее, может ли элемент управления получать фокус.

(Унаследовано от Control)
CanRaiseEvents

Определяет, могут ли вызываться события в элементе управления.

(Унаследовано от Control)
CanSelect

Возвращает значение, указывающее, доступен ли элемент управления для выбора.

(Унаследовано от Control)
Capture

Возвращает или задает значение, указывающее, была ли мышь захвачена элементом управления.

(Унаследовано от Control)
CausesValidation

Возвращает или задает значение, указывающее, вызывает ли элемент управления выполнение проверки для всех элементов управления, требующих проверки, при получении фокуса.

(Унаследовано от Control)
CheckAlign

Получает или задает расположение части элемента управления RadioButton, соответствующей флажку.

Checked

Возвращает или задает значение, указывающее, выбран ли данный элемент управления.

ClientRectangle

Возвращает прямоугольник, представляющий клиентскую область элемента управления.

(Унаследовано от Control)
ClientSize

Возвращает или задает высоту и ширину клиентской области элемента управления.

(Унаследовано от Control)
CompanyName

Возвращает название организации или имя создателя приложения, содержащего элемент управления.

(Унаследовано от Control)
Container

Возвращает объект IContainer, который содержит коллекцию Component.

(Унаследовано от Component)
ContainsFocus

Возвращает значение, указывающее, имеет ли элемент управления или один из его дочерних элементов фокус ввода в настоящий момент.

(Унаследовано от Control)
ContextMenu

Возвращает или задает контекстное меню, связанное с элементом управления.

(Унаследовано от Control)
ContextMenuStrip

Возвращает или задает объект ContextMenuStrip, сопоставленный с этим элементом управления.

(Унаследовано от Control)
Controls

Возвращает коллекцию элементов управления, содержащихся в элементе управления.

(Унаследовано от Control)
Created

Возвращает значение, указывающее, был ли создан элемент управления.

(Унаследовано от Control)
CreateParams

Возвращает параметры, необходимые для создания дескриптора элемента управления.

Cursor

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

(Унаследовано от Control)
DataBindings

Возвращает привязки данных для элемента управления.

(Унаследовано от Control)
DefaultCursor

Возвращает или задает курсор по умолчанию для элемента управления.

(Унаследовано от Control)
DefaultImeMode

Возвращает стандартный режим редактора методов ввода, поддерживаемый данным элементом управления.

(Унаследовано от ButtonBase)
DefaultMargin

Возвращает размер пустого пространства в пикселях между элементами управления, которое определено по умолчанию.

(Унаследовано от Control)
DefaultMaximumSize

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

(Унаследовано от Control)
DefaultMinimumSize

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

(Унаследовано от Control)
DefaultPadding

Возвращает внутренние промежутки в содержимом элемента управления в пикселях.

(Унаследовано от Control)
DefaultSize

Получает размер элемента управления по умолчанию.

DesignMode

Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время.

(Унаследовано от Component)
DeviceDpi

Получает значение DPI для устройства, на котором сейчас отображается элемент управления.

(Унаследовано от Control)
DisplayRectangle

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

(Унаследовано от Control)
Disposing

Получает значение, указывающее, находится ли базовый класс Control в процессе удаления.

(Унаследовано от Control)
Dock

Возвращает или задает границы элемента управления, прикрепленные к его родительскому элементу управления, и определяет способ изменения размеров элемента управления с его родительским элементом управления.

(Унаследовано от Control)
DoubleBuffered

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

(Унаследовано от Control)
Enabled

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

(Унаследовано от Control)
Events

Возвращает список обработчиков событий, которые прикреплены к этому объекту Component.

(Унаследовано от Component)
FlatAppearance

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

(Унаследовано от ButtonBase)
FlatStyle

Возвращает или задает плоский внешний вид для кнопки.

(Унаследовано от ButtonBase)
Focused

Возвращает значение, указывающее, имеется ли на элементе управления фокус ввода.

(Унаследовано от Control)
Font

Возвращает или задает шрифт текста, отображаемого элементом управления.

(Унаследовано от Control)
FontHeight

Возвращает или задает высоту шрифта элемента управления.

(Унаследовано от Control)
ForeColor

Возвращает или задает цвет элемента управления.

(Унаследовано от Control)
Handle

Возвращает дескриптор окна, с которым связан элемент управления.

(Унаследовано от Control)
HasChildren

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

(Унаследовано от Control)
Height

Возвращает или задает высоту элемента управления.

(Унаследовано от Control)
Image

Возвращает или задает изображение, отображаемое на кнопке.

(Унаследовано от ButtonBase)
ImageAlign

Возвращает или задает способ выравнивания изображения на кнопке.

(Унаследовано от ButtonBase)
ImageIndex

Возвращает или задает значение индекса списка изображений для изображения, отображаемого на кнопке.

(Унаследовано от ButtonBase)
ImageKey

Получает или задает средство доступа к ключу для изображения в свойстве ImageList.

(Унаследовано от ButtonBase)
ImageList

Получает или задает свойство ImageList, содержащее изображение Image, отображенное в кнопке.

(Унаследовано от ButtonBase)
ImeMode

Возвращает или задает режим редактора метода ввода, поддерживаемый данным элементом управления. Данное свойство не применимо к этому классу.

(Унаследовано от ButtonBase)
ImeModeBase

Получает или задает режим IME элемента управления.

(Унаследовано от Control)
InvokeRequired

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

(Унаследовано от Control)
IsAccessible

Возвращает или задает значение, указывающее, является ли элемент управления видимым для приложений со специальными возможностями.

(Унаследовано от Control)
IsAncestorSiteInDesignMode

Указывает, является ли один из предков этого элемента управления узлом и этим сайтом в Десигнмоде. Это свойство доступно только для чтения.

(Унаследовано от Control)
IsDefault

Возвращает или задает значение, указывающее, является ли этот элемент управления кнопкой по умолчанию.

(Унаследовано от ButtonBase)
IsDisposed

Возвращает значение, указывающее, был ли удален элемент управления.

(Унаследовано от Control)
IsHandleCreated

Возвращает значение, указывающее, имеется ли у элемента управления связанный с ним дескриптор.

(Унаследовано от Control)
IsMirrored

Возвращает значение, указывающее, отображается ли зеркально элемент управления.

(Унаследовано от Control)
LayoutEngine

Получает кэшированный экземпляр механизма размещения элемента управления.

(Унаследовано от Control)
Left

Возвращает или задает расстояние в пикселях между левой границей элемента управления и левой границей клиентской области его контейнера.

(Унаследовано от Control)
Location

Возвращает или задает координаты левого верхнего угла элемента управления относительно левого верхнего угла его контейнера.

(Унаследовано от Control)
Margin

Возвращает или задает расстояние между элементами управления.

(Унаследовано от Control)
MaximumSize

Возвращает или задает размер, являющийся верхней границей, которую может указать метод GetPreferredSize(Size).

(Унаследовано от Control)
MinimumSize

Возвращает или задает размер, являющийся нижней границей, которую может указать метод GetPreferredSize(Size).

(Унаследовано от Control)
Name

Возвращает или задает имя элемента управления.

(Унаследовано от Control)
Padding

Возвращает или задает заполнение в элементе управления.

(Унаследовано от Control)
Parent

Возвращает или задает родительский контейнер элемента управления.

(Унаследовано от Control)
PreferredSize

Возвращает размер прямоугольной области, в которую может поместиться элемент управления.

(Унаследовано от Control)
ProductName

Возвращает имя продукта сборки, содержащей элемент управления.

(Унаследовано от Control)
ProductVersion

Возвращает версию сборки, содержащую элемент управления.

(Унаследовано от Control)
RecreatingHandle

Возвращает значение, указывающее, осуществляет ли в настоящий момент элемент управления повторное создание дескриптора.

(Унаследовано от Control)
Region

Возвращает или задает область окна, связанную с элементом управления.

(Унаследовано от Control)
RenderRightToLeft

Является устаревшей.

Является устаревшей.

Это свойство устарело.

(Унаследовано от Control)
ResizeRedraw

Возвращает или задает значение, указывающее, перерисовывается ли элемент управления при изменении размеров.

(Унаследовано от Control)
Right

Возвращает расстояние в пикселях между правой границей элемента управления и левой границей клиентской области его контейнера.

(Унаследовано от Control)
RightToLeft

Возвращает или задает значение, указывающее, выровнены ли компоненты элемента управления для поддержки языков, использующих шрифты с написанием справа налево.

(Унаследовано от Control)
ScaleChildren

Получает значение, определяющее масштабирование дочерних элементов управления.

(Унаследовано от Control)
ShowFocusCues

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

(Унаследовано от Control)
ShowKeyboardCues

Возвращает значение, указывающее, имеет ли пользовательский интерфейс соответствующее состояние, при котором отображаются или скрываются сочетания клавиш.

(Унаследовано от Control)
Site

Возвращает или задает местонахождение элемента управления.

(Унаследовано от Control)
Size

Возвращает или задает высоту и ширину элемента управления.

(Унаследовано от Control)
TabIndex

Возвращает или задает последовательность перехода по клавише TAB между элементами управления внутри контейнера.

(Унаследовано от Control)
TabStop

Возвращает или задает значение, указывающее, может ли пользователь перевести фокус на данный элемент управления при помощи клавиши TAB.

Tag

Возвращает или задает объект, содержащий данные об элементе управления.

(Унаследовано от Control)
Text

Возвращает или задает текст, связанный с этим элементом управления.

(Унаследовано от ButtonBase)
TextAlign

Получает или задает выравнивание текста в элементе управления RadioButton.

TextImageRelation

Возвращает или задает расположение текста и изображения относительно друг друга.

(Унаследовано от ButtonBase)
Top

Возвращает или задает расстояние в пикселях между верхней границей элемента управления и верхней границей клиентской области его контейнера.

(Унаследовано от Control)
TopLevelControl

Получает родительский элемент управления, не имеющий другого родительского элемента управления Windows Forms. Как правило, им является внешний объект Form, в котором содержится элемент управления.

(Унаследовано от Control)
UseCompatibleTextRendering

возвращает или задает значение, определяющее, следует ли использовать Graphics класс (GDI+) или TextRenderer класс (GDI) для отрисовки текста.

(Унаследовано от ButtonBase)
UseMnemonic

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

(Унаследовано от ButtonBase)
UseVisualStyleBackColor

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

(Унаследовано от ButtonBase)
UseWaitCursor

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

(Унаследовано от Control)
Visible

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

(Унаследовано от Control)
Width

Возвращает или задает ширину элемента управления.

(Унаследовано от Control)
WindowTarget

Данное свойство не применимо к этому классу.

(Унаследовано от Control)
AccessibilityNotifyClients(AccessibleEvents, Int32)

Уведомляет клиентские приложения со специальными возможностями об указанном перечислении AccessibleEvents для указанного дочернего элемента управления.

(Унаследовано от Control)
AccessibilityNotifyClients(AccessibleEvents, Int32, Int32)

Уведомляет клиентские приложения со специальными возможностями об указанном перечислении AccessibleEvents для указанного дочернего элемента управления.

(Унаследовано от Control)
BeginInvoke(Action)

Выполняет указанный делегат асинхронно в потоке, в котором был создан базовый дескриптор элемента управления.

(Унаследовано от Control)
BeginInvoke(Delegate)

Выполняет указанный делегат асинхронно в потоке, в котором был создан базовый дескриптор элемента управления.

(Унаследовано от Control)
BeginInvoke(Delegate, Object[])

Выполняет указанный делегат асинхронно с указанными аргументами в потоке, в котором был создан базовый дескриптор элемента управления.

(Унаследовано от Control)
BringToFront()

Помещает элемент управления в начало z-порядка.

(Унаследовано от Control)
Contains(Control)

Возвращает значение, указывающее, является ли указанный элемент управления дочерним элементом.

(Унаследовано от Control)
CreateAccessibilityInstance()

Создает для элемента управления RadioButton новый объект с поддержкой специальных возможностей.

CreateControl()

Вызывает принудительное создание видимого элемента управления, включая создание дескриптора и всех видимых дочерних элементов.

(Унаследовано от Control)
CreateControlsInstance()

Создает новый экземпляр коллекции элементов управления для данного элемента управления.

(Унаследовано от Control)
CreateGraphics()

Создает объект Graphics для элемента управления.

(Унаследовано от Control)
CreateHandle()

Создает дескриптор для элемента управления.

(Унаследовано от Control)
CreateObjRef(Type)

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

(Унаследовано от MarshalByRefObject)
DefWndProc(Message)

Отправляет заданное сообщение процедуре окна, используемой по умолчанию.

(Унаследовано от Control)
DestroyHandle()

Удаляет дескриптор, связанный с элементом управления.

(Унаследовано от Control)
Dispose()

Освобождает все ресурсы, занятые модулем Component.

(Унаследовано от Component)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом ButtonBase, а при необходимости освобождает также управляемые ресурсы.

(Унаследовано от ButtonBase)
DoDragDrop(Object, DragDropEffects)

Начинает операцию перетаскивания.

(Унаследовано от Control)
DrawToBitmap(Bitmap, Rectangle)

Поддерживает отрисовку в указанном точечном рисунке.

(Унаследовано от Control)
EndInvoke(IAsyncResult)

Получает возвращаемое значение асинхронной операции, представленное переданным объектом IAsyncResult.

(Унаследовано от Control)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
FindForm()

Возвращает форму, в которой находится элемент управления.

(Унаследовано от Control)
Focus()

Устанавливает фокус ввода на элемент управления.

(Унаследовано от Control)
GetAccessibilityObjectById(Int32)

Получает указанный объект AccessibleObject.

(Унаследовано от Control)
GetAutoSizeMode()

Получает значение, указывающее, как будет вести себя элемент управления, когда его свойство AutoSize включено.

(Унаследовано от Control)
GetChildAtPoint(Point)

Возвращает дочерний элемент управления, имеющий указанные координаты.

(Унаследовано от Control)
GetChildAtPoint(Point, GetChildAtPointSkip)

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

(Унаследовано от Control)
GetContainerControl()

Возвращает следующий объект ContainerControl в цепочке родительских элементов управления данного элемента.

(Унаследовано от Control)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetLifetimeService()

Является устаревшей.

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.

(Унаследовано от MarshalByRefObject)
GetNextControl(Control, Boolean)

Возвращает следующий или предыдущий элемент среди дочерних элементов управления в последовательности клавиши TAB.

(Унаследовано от Control)
GetPreferredSize(Size)

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

(Унаследовано от ButtonBase)
GetScaledBounds(Rectangle, SizeF, BoundsSpecified)

Возвращает границы, внутри которых масштабируется элемент управления.

(Унаследовано от Control)
GetService(Type)

Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container.

(Унаследовано от Component)
GetStyle(ControlStyles)

Возвращает значение указанного бита стиля элемента управления для данного элемента управления.

(Унаследовано от Control)
GetTopLevel()

Определяет, находится ли элемент управления на верхнем уровне.

(Унаследовано от Control)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
Hide()

Скрывает элемент управления от пользователя.

(Унаследовано от Control)
InitializeLifetimeService()

Является устаревшей.

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
InitLayout()

Вызывается после добавления элемента управления в другой контейнер.

(Унаследовано от Control)
Invalidate()

Делает недействительной всю поверхность элемента управления и вызывает его перерисовку.

(Унаследовано от Control)
Invalidate(Boolean)

Делает недействительной конкретную область элемента управления и вызывает отправку сообщения рисования элементу управления. При необходимости объявляет недействительными назначенные элементу управления дочерние элементы.

(Унаследовано от Control)
Invalidate(Rectangle)

Делает недействительной указанную область элемента управления (добавляет ее к области обновления элемента, которая будет перерисована при следующей операции рисования) и вызывает отправку сообщения рисования элементу управления.

(Унаследовано от Control)
Invalidate(Rectangle, Boolean)

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

(Унаследовано от Control)
Invalidate(Region)

Делает недействительной указанную область элемента управления (добавляет ее к области обновления элемента, которая будет перерисована при следующей операции рисования) и вызывает отправку сообщения рисования элементу управления.

(Унаследовано от Control)
Invalidate(Region, Boolean)

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

(Унаследовано от Control)
Invoke(Action)

Выполняет указанный делегат в том потоке, которому принадлежит базовый дескриптор окна элемента управления.

(Унаследовано от Control)
Invoke(Delegate)

Выполняет указанный делегат в том потоке, которому принадлежит базовый дескриптор окна элемента управления.

(Унаследовано от Control)
Invoke(Delegate, Object[])

Выполняет указанный делегат в том потоке, которому принадлежит основной дескриптор окна элемента управления, с указанным списком аргументов.

(Унаследовано от Control)
Invoke<T>(Func<T>)

Выполняет указанный делегат в том потоке, которому принадлежит базовый дескриптор окна элемента управления.

(Унаследовано от Control)
InvokeGotFocus(Control, EventArgs)

Вызывает событие GotFocus для указанного элемента управления.

(Унаследовано от Control)
InvokeLostFocus(Control, EventArgs)

Вызывает событие LostFocus для указанного элемента управления.

(Унаследовано от Control)
InvokeOnClick(Control, EventArgs)

Вызывает событие Click для указанного элемента управления.

(Унаследовано от Control)
InvokePaint(Control, PaintEventArgs)

Вызывает событие Paint для указанного элемента управления.

(Унаследовано от Control)
InvokePaintBackground(Control, PaintEventArgs)

Вызывает событие PaintBackground для указанного элемента управления.

(Унаследовано от Control)
IsInputChar(Char)

Определяет, является ли символ входным символом, который распознается элементом управления.

(Унаследовано от Control)
IsInputKey(Keys)

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

(Унаследовано от Control)
LogicalToDeviceUnits(Int32)

Преобразует логическое значение DPI в эквивалентное значение DPI DeviceUnit.

(Унаследовано от Control)
LogicalToDeviceUnits(Size)

Преобразует размер из логических единиц в единицы устройства путем его масштабирования к текущему DPI и округлением вниз до ближайшего целого значения ширины и высоты.

(Унаследовано от Control)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неполную копию текущего объекта MarshalByRefObject.

(Унаследовано от MarshalByRefObject)
NotifyInvalidate(Rectangle)

Вызывает событие Invalidated, чтобы сделать недействительной указанную область элемента управления.

(Унаследовано от Control)
OnAutoSizeChanged(EventArgs)

Вызывает событие AutoSizeChanged.

(Унаследовано от Control)
OnBackColorChanged(EventArgs)

Вызывает событие BackColorChanged.

(Унаследовано от Control)
OnBackgroundImageChanged(EventArgs)

Вызывает событие BackgroundImageChanged.

(Унаследовано от Control)
OnBackgroundImageLayoutChanged(EventArgs)

Вызывает событие BackgroundImageLayoutChanged.

(Унаследовано от Control)
OnBindingContextChanged(EventArgs)

Вызывает событие BindingContextChanged.

(Унаследовано от Control)
OnCausesValidationChanged(EventArgs)

Вызывает событие CausesValidationChanged.

(Унаследовано от Control)
OnChangeUICues(UICuesEventArgs)

Вызывает событие ChangeUICues.

(Унаследовано от Control)
OnCheckedChanged(EventArgs)

Вызывает событие CheckedChanged.

OnClick(EventArgs)

Вызывает событие Click.

OnClientSizeChanged(EventArgs)

Вызывает событие ClientSizeChanged.

(Унаследовано от Control)
OnContextMenuChanged(EventArgs)

Вызывает событие ContextMenuChanged.

(Унаследовано от Control)
OnContextMenuStripChanged(EventArgs)

Вызывает событие ContextMenuStripChanged.

(Унаследовано от Control)
OnControlAdded(ControlEventArgs)

Вызывает событие ControlAdded.

(Унаследовано от Control)
OnControlRemoved(ControlEventArgs)

Вызывает событие ControlRemoved.

(Унаследовано от Control)
OnCreateControl()

Вызывает метод CreateControl().

(Унаследовано от Control)
OnCursorChanged(EventArgs)

Вызывает событие CursorChanged.

(Унаследовано от Control)
OnDockChanged(EventArgs)

Вызывает событие DockChanged.

(Унаследовано от Control)
OnDoubleClick(EventArgs)

Вызывает событие DoubleClick.

(Унаследовано от Control)
OnDpiChangedAfterParent(EventArgs)

Вызывает событие DpiChangedAfterParent.

(Унаследовано от Control)
OnDpiChangedBeforeParent(EventArgs)

Вызывает событие DpiChangedBeforeParent.

(Унаследовано от Control)
OnDragDrop(DragEventArgs)

Вызывает событие DragDrop.

(Унаследовано от Control)
OnDragEnter(DragEventArgs)

Вызывает событие DragEnter.

(Унаследовано от Control)
OnDragLeave(EventArgs)

Вызывает событие DragLeave.

(Унаследовано от Control)
OnDragOver(DragEventArgs)

Вызывает событие DragOver.

(Унаследовано от Control)
OnEnabledChanged(EventArgs)

Вызывает событие EnabledChanged.

(Унаследовано от ButtonBase)
OnEnter(EventArgs)

Вызывает событие Enter.

OnFontChanged(EventArgs)

Вызывает событие FontChanged.

(Унаследовано от Control)
OnForeColorChanged(EventArgs)

Вызывает событие ForeColorChanged.

(Унаследовано от Control)
OnGiveFeedback(GiveFeedbackEventArgs)

Вызывает событие GiveFeedback.

(Унаследовано от Control)
OnGotFocus(EventArgs)

Вызывает событие GotFocus.

(Унаследовано от ButtonBase)
OnHandleCreated(EventArgs)

Переопределяет метод OnHandleCreated(EventArgs).

OnHandleDestroyed(EventArgs)

Вызывает событие HandleDestroyed.

(Унаследовано от Control)
OnHelpRequested(HelpEventArgs)

Вызывает событие HelpRequested.

(Унаследовано от Control)
OnImeModeChanged(EventArgs)

Вызывает событие ImeModeChanged.

(Унаследовано от Control)
OnInvalidated(InvalidateEventArgs)

Вызывает событие Invalidated.

(Унаследовано от Control)
OnKeyDown(KeyEventArgs)

Вызывает событие OnKeyUp(KeyEventArgs).

(Унаследовано от ButtonBase)
OnKeyPress(KeyPressEventArgs)

Вызывает событие KeyPress.

(Унаследовано от Control)
OnKeyUp(KeyEventArgs)

Вызывает событие OnKeyUp(KeyEventArgs).

(Унаследовано от ButtonBase)
OnLayout(LayoutEventArgs)

Вызывает событие Layout.

(Унаследовано от Control)
OnLeave(EventArgs)

Вызывает событие Leave.

(Унаследовано от Control)
OnLocationChanged(EventArgs)

Вызывает событие LocationChanged.

(Унаследовано от Control)
OnLostFocus(EventArgs)

Вызывает событие OnLostFocus(EventArgs).

(Унаследовано от ButtonBase)
OnMarginChanged(EventArgs)

Вызывает событие MarginChanged.

(Унаследовано от Control)
OnMouseCaptureChanged(EventArgs)

Вызывает событие MouseCaptureChanged.

(Унаследовано от Control)
OnMouseClick(MouseEventArgs)

Вызывает событие MouseClick.

(Унаследовано от Control)
OnMouseDoubleClick(MouseEventArgs)

Вызывает событие MouseDoubleClick.

(Унаследовано от Control)
OnMouseDown(MouseEventArgs)

Вызывает событие OnMouseDown(MouseEventArgs).

(Унаследовано от ButtonBase)
OnMouseEnter(EventArgs)

Вызывает событие OnMouseEnter(EventArgs).

(Унаследовано от ButtonBase)
OnMouseHover(EventArgs)

Вызывает событие MouseHover.

(Унаследовано от Control)
OnMouseLeave(EventArgs)

Вызывает событие OnMouseLeave(EventArgs).

(Унаследовано от ButtonBase)
OnMouseMove(MouseEventArgs)

Вызывает событие OnMouseMove(MouseEventArgs).

(Унаследовано от ButtonBase)
OnMouseUp(MouseEventArgs)

Вызывает событие MouseUp.

OnMouseWheel(MouseEventArgs)

Вызывает событие MouseWheel.

(Унаследовано от Control)
OnMove(EventArgs)

Вызывает событие Move.

(Унаследовано от Control)
OnNotifyMessage(Message)

Уведомляет элемент управления о сообщениях Windows.

(Унаследовано от Control)
OnPaddingChanged(EventArgs)

Вызывает событие PaddingChanged.

(Унаследовано от Control)
OnPaint(PaintEventArgs)

Вызывает событие OnPaint(PaintEventArgs).

(Унаследовано от ButtonBase)
OnPaintBackground(PaintEventArgs)

Рисует фон элемента управления.

(Унаследовано от Control)
OnParentBackColorChanged(EventArgs)

Вызывает событие BackColorChanged при изменении значения свойства BackColor контейнера элемента управления.

(Унаследовано от Control)
OnParentBackgroundImageChanged(EventArgs)

Вызывает событие BackgroundImageChanged при изменении значения свойства BackgroundImage контейнера элемента управления.

(Унаследовано от Control)
OnParentBindingContextChanged(EventArgs)

Вызывает событие BindingContextChanged при изменении значения свойства BindingContext контейнера элемента управления.

(Унаследовано от Control)
OnParentChanged(EventArgs)

Вызывает событие ParentChanged.

(Унаследовано от ButtonBase)
OnParentCursorChanged(EventArgs)

Вызывает событие CursorChanged.

(Унаследовано от Control)
OnParentEnabledChanged(EventArgs)

Вызывает событие EnabledChanged при изменении значения свойства Enabled контейнера элемента управления.

(Унаследовано от Control)
OnParentFontChanged(EventArgs)

Вызывает событие FontChanged при изменении значения свойства Font контейнера элемента управления.

(Унаследовано от Control)
OnParentForeColorChanged(EventArgs)

Вызывает событие ForeColorChanged при изменении значения свойства ForeColor контейнера элемента управления.

(Унаследовано от Control)
OnParentRightToLeftChanged(EventArgs)

Вызывает событие RightToLeftChanged при изменении значения свойства RightToLeft контейнера элемента управления.

(Унаследовано от Control)
OnParentVisibleChanged(EventArgs)

Вызывает событие VisibleChanged при изменении значения свойства Visible контейнера элемента управления.

(Унаследовано от Control)
OnPreviewKeyDown(PreviewKeyDownEventArgs)

Вызывает событие PreviewKeyDown.

(Унаследовано от Control)
OnPrint(PaintEventArgs)

Вызывает событие Paint.

(Унаследовано от Control)
OnQueryContinueDrag(QueryContinueDragEventArgs)

Вызывает событие QueryContinueDrag.

(Унаследовано от Control)
OnRegionChanged(EventArgs)

Вызывает событие RegionChanged.

(Унаследовано от Control)
OnResize(EventArgs)

Вызывает событие Resize.

(Унаследовано от Control)
OnRightToLeftChanged(EventArgs)

Вызывает событие RightToLeftChanged.

(Унаследовано от Control)
OnSizeChanged(EventArgs)

Вызывает событие SizeChanged.

(Унаследовано от Control)
OnStyleChanged(EventArgs)

Вызывает событие StyleChanged.

(Унаследовано от Control)
OnSystemColorsChanged(EventArgs)

Вызывает событие SystemColorsChanged.

(Унаследовано от Control)
OnTabIndexChanged(EventArgs)

Вызывает событие TabIndexChanged.

(Унаследовано от Control)
OnTabStopChanged(EventArgs)

Вызывает событие TabStopChanged.

(Унаследовано от Control)
OnTextChanged(EventArgs)

Вызывает событие TextChanged.

(Унаследовано от ButtonBase)
OnValidated(EventArgs)

Вызывает событие Validated.

(Унаследовано от Control)
OnValidating(CancelEventArgs)

Вызывает событие Validating.

(Унаследовано от Control)
OnVisibleChanged(EventArgs)

Вызывает событие VisibleChanged.

(Унаследовано от ButtonBase)
PerformClick()

Создает событие Click для элемента управления, имитируя щелчок мышью.

PerformLayout()

Вызывает в элементе управления принудительное применение логики макета ко всем его дочерним элементам управления.

(Унаследовано от Control)
PerformLayout(Control, String)

Вызывает в элементе управления принудительное применение логики макета ко всем его дочерним элементам управления.

(Унаследовано от Control)
PointToClient(Point)

Вычисляет местоположение указанной точки экрана в клиентских координатах.

(Унаследовано от Control)
PointToScreen(Point)

Вычисляет местоположение указанной точки клиента в экранных координатах.

(Унаследовано от Control)
PreProcessControlMessage(Message)

Выполняет предварительную обработку клавиатурных или входящих сообщений в цикле обработки сообщений перед их отправкой.

(Унаследовано от Control)
PreProcessMessage(Message)

Выполняет предварительную обработку клавиатурных или входящих сообщений в цикле обработки сообщений перед их отправкой.

(Унаследовано от Control)
ProcessCmdKey(Message, Keys)

Обрабатывает клавишу для команд.

(Унаследовано от Control)
ProcessDialogChar(Char)

Обрабатывает символ диалогового окна.

(Унаследовано от Control)
ProcessDialogKey(Keys)

Обрабатывает клавишу диалогового окна.

(Унаследовано от Control)
ProcessKeyEventArgs(Message)

Обрабатывает сообщение о нажатии клавиши и создает соответствующие события элемента управления.

(Унаследовано от Control)
ProcessKeyMessage(Message)

Обрабатывает сообщение клавиатуры.

(Унаследовано от Control)
ProcessKeyPreview(Message)

Выполняет предварительный просмотр сообщения клавиатуры.

(Унаследовано от Control)
ProcessMnemonic(Char)

Переопределяет метод ProcessMnemonic(Char).

RaiseDragEvent(Object, DragEventArgs)

Вызывает соответствующее событие перетаскивания.

(Унаследовано от Control)
RaiseKeyEvent(Object, KeyEventArgs)

Вызывает соответствующее событие клавиши.

(Унаследовано от Control)
RaiseMouseEvent(Object, MouseEventArgs)

Вызывает соответствующее событие мыши.

(Унаследовано от Control)
RaisePaintEvent(Object, PaintEventArgs)

Вызывает соответствующее событие рисования.

(Унаследовано от Control)
RecreateHandle()

Вызывает повторное создание дескриптора элемента управления.

(Унаследовано от Control)
RectangleToClient(Rectangle)

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

(Унаследовано от Control)
RectangleToScreen(Rectangle)

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

(Унаследовано от Control)
Refresh()

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

(Унаследовано от Control)
RescaleConstantsForDpi(Int32, Int32)

Предоставляет константы для изменения масштаба элемента управления RadioButton при изменении DPI.

RescaleConstantsForDpi(Int32, Int32)

Предоставляет константы для изменения масштаба элемента управления при изменении DPI.

(Унаследовано от Control)
ResetBackColor()

Восстанавливает значение по умолчанию свойства BackColor.

(Унаследовано от Control)
ResetBindings()

Вызывает в элементе управления, привязанном к компоненту BindingSource, повторное считывание всех элементов списка и обновление их отображаемых значений.

(Унаследовано от Control)
ResetCursor()

Восстанавливает значение по умолчанию свойства Cursor.

(Унаследовано от Control)
ResetFlagsandPaint()

Восстанавливает для элемента управления Button состояние, в котором он находился перед нажатием, и перерисовывает его.

(Унаследовано от ButtonBase)
ResetFont()

Восстанавливает значение по умолчанию свойства Font.

(Унаследовано от Control)
ResetForeColor()

Восстанавливает значение по умолчанию свойства ForeColor.

(Унаследовано от Control)
ResetImeMode()

Восстанавливает значение по умолчанию свойства ImeMode.

(Унаследовано от Control)
ResetMouseEventArgs()

Сбрасывает элемент управления в дескриптор события MouseLeave.

(Унаследовано от Control)
ResetRightToLeft()

Восстанавливает значение по умолчанию свойства RightToLeft.

(Унаследовано от Control)
ResetText()

Восстанавливает значение по умолчанию свойства Text (Empty).

(Унаследовано от Control)
ResumeLayout()

Возобновляет обычную логику макета.

(Унаследовано от Control)
ResumeLayout(Boolean)

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

(Унаследовано от Control)
RtlTranslateAlignment(ContentAlignment)

Преобразует указанный объект ContentAlignment в соответствующий объект ContentAlignment, чтобы обеспечить поддержку текста, читаемого справа налево.

(Унаследовано от Control)
RtlTranslateAlignment(HorizontalAlignment)

Преобразует указанный объект HorizontalAlignment в соответствующий объект HorizontalAlignment, чтобы обеспечить поддержку текста, читаемого справа налево.

(Унаследовано от Control)
RtlTranslateAlignment(LeftRightAlignment)

Преобразует указанный объект LeftRightAlignment в соответствующий объект LeftRightAlignment, чтобы обеспечить поддержку текста, читаемого справа налево.

(Унаследовано от Control)
RtlTranslateContent(ContentAlignment)

Преобразует указанный объект ContentAlignment в соответствующий объект ContentAlignment, чтобы обеспечить поддержку текста, читаемого справа налево.

(Унаследовано от Control)
RtlTranslateHorizontal(HorizontalAlignment)

Преобразует указанный объект HorizontalAlignment в соответствующий объект HorizontalAlignment, чтобы обеспечить поддержку текста, читаемого справа налево.

(Унаследовано от Control)
RtlTranslateLeftRight(LeftRightAlignment)

Преобразует указанный объект LeftRightAlignment в соответствующий объект LeftRightAlignment, чтобы обеспечить поддержку текста, читаемого справа налево.

(Унаследовано от Control)
Scale(Single)

Является устаревшей.

Является устаревшей.

Масштабирует элемент управления и любые его дочерние элементы.

(Унаследовано от Control)
Scale(Single, Single)

Является устаревшей.

Является устаревшей.

Масштабирует весь элемент управления и любые его дочерние элементы.

(Унаследовано от Control)
Scale(SizeF)

Масштабирует элемент управления и любые его дочерние элементы с использованием заданного коэффициента масштабирования.

(Унаследовано от Control)
ScaleBitmapLogicalToDevice(Bitmap)

Масштабирует логическое значение точечного рисунка в эквивалентное значение единицы измерения устройства при изменении настройки DPI.

(Унаследовано от Control)
ScaleControl(SizeF, BoundsSpecified)

Выполняет масштабирование расположения, размеров, заполнения и полей элемента управления.

(Унаследовано от Control)
ScaleCore(Single, Single)

Данный метод не применим к этому классу.

(Унаследовано от Control)
Select()

Активирует элемент управления.

(Унаследовано от Control)
Select(Boolean, Boolean)

Активирует дочерний элемент управления. При необходимости указывает направление для выбора элементов управления в последовательности табуляции.

(Унаследовано от Control)
SelectNextControl(Control, Boolean, Boolean, Boolean, Boolean)

Активирует следующий элемент управления.

(Унаследовано от Control)
SendToBack()

Отправляет элемент управления в конец z-порядка.

(Унаследовано от Control)
SetAutoSizeMode(AutoSizeMode)

Задает значение, указывающее, как будет вести себя элемент управления, когда его свойство AutoSize включено.

(Унаследовано от Control)
SetBounds(Int32, Int32, Int32, Int32)

Задает границы элемента управления для указанного местоположения и размера.

(Унаследовано от Control)
SetBounds(Int32, Int32, Int32, Int32, BoundsSpecified)

Задает указанные границы элемента управления для указанного местоположения и размера.

(Унаследовано от Control)
SetBoundsCore(Int32, Int32, Int32, Int32, BoundsSpecified)

Задает указанные границы данного элемента управления.

(Унаследовано от Control)
SetClientSizeCore(Int32, Int32)

Задает размер клиентской области элемента управления.

(Унаследовано от Control)
SetStyle(ControlStyles, Boolean)

Задает указанный флаг ControlStyles либо в значение true, либо в значение false.

(Унаследовано от Control)
SetTopLevel(Boolean)

Определяет элемент управления как элемент верхнего уровня.

(Унаследовано от Control)
SetVisibleCore(Boolean)

Задает для элемента управления указанное видимое состояние.

(Унаследовано от Control)
Show()

Отображает элемент управления.

(Унаследовано от Control)
SizeFromClientSize(Size)

Определяет размер всего элемента управления по высоте и ширине его клиентской области.

(Унаследовано от Control)
SuspendLayout()

Временно приостанавливает логику макета для элемента управления.

(Унаследовано от Control)
ToString()

Переопределяет метод ToString().

Update()

Вызывает перерисовку элементом управления недопустимых областей клиентской области.

(Унаследовано от Control)
UpdateBounds()

Обновляет границы элемента управления с учетом текущего размера и местоположения.

(Унаследовано от Control)
UpdateBounds(Int32, Int32, Int32, Int32)

Обновляет границы элемента управления с учетом указанного размера и местоположения.

(Унаследовано от Control)
UpdateBounds(Int32, Int32, Int32, Int32, Int32, Int32)

Обновляет границы элемента управления с учетом указанного размера, местоположения и клиентского размера.

(Унаследовано от Control)
UpdateStyles()

Вызывает принудительное повторное применение назначенных стилей к элементу управления.

(Унаследовано от Control)
UpdateZOrder()

Обновляет элемент управления в z-порядке его родительского элемента управления.

(Унаследовано от Control)
WndProc(Message)

Обрабатывает сообщения Windows.

(Унаследовано от ButtonBase)
AppearanceChanged

Происходит при изменении значения свойства Appearance.

AutoSizeChanged

Происходит при изменении значения свойства AutoSize.

(Унаследовано от ButtonBase)
BackColorChanged

Происходит при изменении значения свойства BackColor.

(Унаследовано от Control)
BackgroundImageChanged

Происходит при изменении значения свойства BackgroundImage.

(Унаследовано от Control)
BackgroundImageLayoutChanged

Происходит при изменении свойства BackgroundImageLayout.

(Унаследовано от Control)
BindingContextChanged

Происходит при изменении значения свойства BindingContext.

(Унаследовано от Control)
CausesValidationChanged

Происходит при изменении значения свойства CausesValidation.

(Унаследовано от Control)
ChangeUICues

Происходит при получении сигналов на изменение от фокуса или клавиатурного интерфейса.

(Унаследовано от Control)
CheckedChanged

Происходит при изменении значения свойства Checked.

Click

Происходит при щелчке элемента управления.

(Унаследовано от Control)
ClientSizeChanged

Происходит при изменении значения свойства ClientSize.

(Унаследовано от Control)
ContextMenuChanged

Происходит при изменении значения свойства ContextMenu.

(Унаследовано от Control)
ContextMenuStripChanged

Происходит при изменении значения свойства ContextMenuStrip.

(Унаследовано от Control)
ControlAdded

Происходит при добавлении нового элемента управления в массив Control.ControlCollection.

(Унаследовано от Control)
ControlRemoved

Происходит при удалении элемента управления из Control.ControlCollection.

(Унаследовано от Control)
CursorChanged

Происходит при изменении значения свойства Cursor.

(Унаследовано от Control)
Disposed

Возникает при удалении компонента путем вызова метода Dispose().

(Унаследовано от Component)
DockChanged

Происходит при изменении значения свойства Dock.

(Унаследовано от Control)
DoubleClick

Происходит при двойном щелчке элемента управления RadioButton.

DpiChangedAfterParent

Возникает, когда настройка DPI для элемента управления изменяется программным образом после изменения DPI связанного родительского элемента управления или формы.

(Унаследовано от Control)
DpiChangedBeforeParent

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

(Унаследовано от Control)
DragDrop

Вызывается при завершении операции перетаскивания.

(Унаследовано от Control)
DragEnter

Происходит, когда объект перетаскивается в границы элемента управления.

(Унаследовано от Control)
DragLeave

Вызывается, когда объект перетаскивается за пределы элемента управления.

(Унаследовано от Control)
DragOver

Происходит, когда объект перетаскивается через границу элемента управления.

(Унаследовано от Control)
EnabledChanged

Происходит, если значение свойства Enabled было изменено.

(Унаследовано от Control)
Enter

Происходит при входе в элемент управления.

(Унаследовано от Control)
FontChanged

Происходит при изменении значения свойства Font.

(Унаследовано от Control)
ForeColorChanged

Происходит при изменении значения свойства ForeColor.

(Унаследовано от Control)
GiveFeedback

Вызывается при выполнении операции перетаскивания.

(Унаследовано от Control)
GotFocus

Вызывается при получении фокуса элементом управления.

(Унаследовано от Control)
HandleCreated

Происходит при создании дескриптора для элемента управления.

(Унаследовано от Control)
HandleDestroyed

Происходит в процессе удаления дескриптора элемента управления.

(Унаследовано от Control)
HelpRequested

Происходит при запросе справки для элемента управления.

(Унаследовано от Control)
ImeModeChanged

Происходит при изменении свойства ImeMode. Данное событие не применимо к этому классу.

(Унаследовано от ButtonBase)
Invalidated

Происходит, когда для отображения элемента управления требуется перерисовка.

(Унаследовано от Control)
KeyDown

Происходит при нажатии клавиши, если элемент управления имеет фокус.

(Унаследовано от Control)
KeyPress

Происходит при нажатии клавиши с буквой, пробела или клавиши BACKSPACE, если фокус находится в элементе управления.

(Унаследовано от Control)
KeyUp

Происходит, когда отпускается клавиша, если элемент управления имеет фокус.

(Унаследовано от Control)
Layout

Происходит, когда необходимо изменить позицию дочерних элементов управления данного элемента управления.

(Унаследовано от Control)
Leave

Происходит, когда фокус ввода покидает элемент управления.

(Унаследовано от Control)
LocationChanged

Происходит, если значение свойства Location было изменено.

(Унаследовано от Control)
LostFocus

Происходит при потере фокуса элементом управления.

(Унаследовано от Control)
MarginChanged

Происходит при изменении поля элемента управления.

(Унаследовано от Control)
MouseCaptureChanged

Происходит при потере захвата мыши элементом управления.

(Унаследовано от Control)
MouseClick

Вызывается при щелчке мышью элемента управления.

(Унаследовано от Control)
MouseDoubleClick

Происходит, когда пользователь дважды щелкает элемент управления RadioButton.

MouseDoubleClick

Вызывается при двойном щелчке мышью элемента управления.

(Унаследовано от Control)
MouseDown

Происходит при нажатии кнопки мыши, если указатель мыши находится на элементе управления.

(Унаследовано от Control)
MouseEnter

Происходит, когда указатель мыши оказывается на элементе управления.

(Унаследовано от Control)
MouseHover

Происходит, когда указатель мыши задерживается на элементе управления.

(Унаследовано от Control)
MouseLeave

Происходит, когда указатель мыши покидает элемент управления.

(Унаследовано от Control)
MouseMove

Происходит при перемещении указателя мыши по элементу управления.

(Унаследовано от Control)
MouseUp

Происходит при отпускании кнопки мыши, когда указатель мыши находится на элементе управления.

(Унаследовано от Control)
MouseWheel

Происходит при прокручивании колеса мыши, если данный элемент управления находится в фокусе.

(Унаследовано от Control)
Move

Происходит при перемещении элемента управления.

(Унаследовано от Control)
PaddingChanged

Генерируется при изменении заполнения элемента управления.

(Унаследовано от Control)
Paint

Происходит при перерисовке элемента управления.

(Унаследовано от Control)
ParentChanged

Происходит при изменении значения свойства Parent.

(Унаследовано от Control)
PreviewKeyDown

Генерируется перед событием KeyDown при нажатии клавиши, когда элемент управления имеет фокус.

(Унаследовано от Control)
QueryAccessibilityHelp

Происходит, когда объект AccessibleObject предоставляет справку для приложений со специальными возможностями.

(Унаследовано от Control)
QueryContinueDrag

Происходит во время операции перетаскивания и позволяет источнику перетаскивания определить, следует ли отменить эту операцию.

(Унаследовано от Control)
RegionChanged

Происходит при изменении значения свойства Region.

(Унаследовано от Control)
Resize

Происходит при изменении размеров элемента управления.

(Унаследовано от Control)
RightToLeftChanged

Происходит при изменении значения свойства RightToLeft.

(Унаследовано от Control)
SizeChanged

Происходит при изменении значения свойства Size.

(Унаследовано от Control)
StyleChanged

Происходит при изменении стиля элемента управления.

(Унаследовано от Control)
SystemColorsChanged

Происходит при изменении системных цветов.

(Унаследовано от Control)
TabIndexChanged

Происходит при изменении значения свойства TabIndex.

(Унаследовано от Control)
TabStopChanged

Происходит при изменении значения свойства TabStop.

(Унаследовано от Control)
TextChanged

Происходит при изменении значения свойства Text.

(Унаследовано от Control)
Validated

Происходит по завершении проверки элемента управления.

(Унаследовано от Control)
Validating

Возникает при проверке действительности элемента управления.

(Унаследовано от Control)
VisibleChanged

Происходит при изменении значения свойства Visible.

(Унаследовано от Control)

Radio buttons, checkboxes и другие виды селекторов

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

Читайте также: Советы по дизайну селекторов (checkboxes, radio buttons, switches и тд.)

1. Что такое селекторы

Селектор (selector) – это поле ввода, в котором пользователь должен выбрать один (или несколько) параметров, в отличие от текстового поля, в котором пользователь имеет полную свободу действий. Селекторы, как прически Lady Gaga, бывают разных форм и стилей. Выпадающие списки, флажки, переключатели, ползунки и т.д. – это разные типы селекторов, но они не похожи друг на друга. Основное функциональное различие между этими типами селекторов состоит в том, сколько вариантов пользователь может выбрать: один или несколько.

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

2. Анатомия флажков и радиокнопок

Хотя, в этой статье мы рассмотрим различные типы селекторов, мы сосредоточимся на радиокнопках (radio buttons) и флажках (checkboxes). Ниже их анатомия.

Анатомия радиокнопок и флажков

Примечание: Иногда люди говорят «radio button»/ «checkbox», когда имеют ввиду метку и селектор вместе, в то время, как в других случаях они подразумевают только селектор. Я предпочитаю последний вариант.

3. В чем разница между радиокнопками и флажками

Радиокнопки и флажки очень похожи, за исключением нескольких ключевых отличий. Основное отличие состоит в том, что с помощью радиокнопок вы можете выбрать только один элемент, а с помощью флажков – любое количество. Я собиралась составить таблицу, чтобы объяснить это, но не стала. Не потому, что а) это звучало скучно, б) Medium не позволяет вставлять таблицы, а поэтому у меня была лучшая идея:

Викторина! Ура! Давайте посмотрим, кто даст 100% правильных ответов.

1) Сколько элементов можно выбрать в стандартном компоненте флажков (если не указано иное)?

  1. 1
  2. 3
  3. Неограниченное кол-во
  4. 0

2) Какова форма селектора радиокнопки?

  1. Квадрат
  2. Круг
  3. Шестиугольник
  4. Треугольник

3) Если вы хотите создать интерфейс, в котором пользователь сможет выбрать несколько начинок для мороженого, вы должны использовать:

  1. Радиокнопки
  2. Флажки

4) Если вы хотите создать интерфейс, в котором пользователь может выбрать тип банковского счета, который он может открыть, вы должны использовать:

  1. Радиокнопки
  2. Флажки

5) Если бы вы хотели создать селектор «Подписаться на рассылку», какой тип вы бы использовали?

  1. Радиокнопка
  2. Флажок

6) Выберите на картинке ниже вариант с радиокнопкой.

  1. A
  2. B

ОТВЕТЫ:
1): 3. Неограниченное кол-во

2): 2. Круг

3): 2. Флажки

4): 1. Радиокнопки

5): 2. Флажок

6): 1. A

Вы справились! (Надеюсь).

4. Распространенные стили селекторов

Ниже представлен ряд распространенных стилей флажков и радиокнопок, с которыми вы можете столкнуться в Интернете.

Стандартный стиль (радиокнопки / флажки)

Самый стандартный стиль флажков и радиокнопок – это кнопки с «галочками» или заполненные кружки. Я предпочитаю кнопки с галочкой, если вы не имеете дело с образовательными тестами (см. ниже).

Стандартный стиль с галочками

Стандартный стиль без галочек

Стиль кнопки в тестах (радиокнопки / флажки)

Когда пользователь отвечает на вопросы теста или викторины, мы должны убедиться в двух вещах: 1) что он может четко видеть, какие ответы выбирает, 2) что он не запутается, когда получит фидбек на свой ответ.

Если вы посмотрите на приведенный ниже пример, то увидите, что «галочка» может сбить с толку – кажется, что эти ответы верны, хотя еще не проверены.

Селекторы викторины, показывающие, что наличие галочки вызывает путаницу

Основной стиль с изображением (радиокнопки/ флажки)

Хотя этот стиль селектора может дать пользователю лучшее представление о том, что он выбирает, я редко использую его, поскольку, все равно изображение всегда будет слишком маленьким, чтобы его можно было разглядеть.

Радиокнопки и флажки с изображениями. Изображения: (с unSplash): Гамбургер от @amir_v_ali | Чикенбургер от @amir_v_ali | Веджибургер от @swimstaralex | Сыр от @swimstaralex | Помидоры от @lmablankers | Латук от @producteurslocaux

Изображения в стиле сетки (одно / несколько)

Я предпочитаю этот стиль изображений базовому, поскольку вы можете сделать изображения намного больше, и они лучше смотрятся.

Селекторы с сеткой изоражений. Изображения (с unSplash): Гамбургер от @amir_v_ali | Чикенбургер от @amir_v_ali | Веджибургер от @swimstaralex | Сыр от @swimstaralex | Помидоры от @lmablankers | Латук от @producteurslocaux

Впервые я узнал об этом стиле в тестах Buzzfeed. Они просто показывают изображение без текста. Если вы используете этот макет, пожалуйста, убедитесь, что у вас есть альтернативный текст для пользователей, использующих программу чтения с экрана или на случай плохого подключение к Интернету.

Пример одиночного селектора в стиле сетки. Скриншот: https://www.buzzfeed.com/jessicamisener/which-sandwich-are-you

Многоуровневые флажки

Многоуровневые флажки необходимы, если элементы нужно разделить на группы. Также обратите внимание, что, если выбраны лишь несколько дочерних элементов, родительская категория выбирается только частично.

Многоуровневые флажки

Это один из наиболее сложных элементов интерфейса, потому что верхний элемент (родительский) действует одновременно, как селектор и, как аккордеон. А что, если вы нажмете на метку, она выберет селектор или откроет / закроет аккордеон? Я не смогла найти определенное исследование того, какой вариант лучше, поскольку это необычный паттерн, но в прошлом я делала метку не селектором, а частью аккордеона. Пишите в комментариях, если у вас есть предложения, как решить эту дилемму.

Принудительный выбор

Иногда вам нужно разрешить пользователям выбирать только определенное количество элементов. Если пользователь выберет на одно значение больше разрешенного количества, самый первый выбранный вариант будет заменен («вытеснен») последним выбранным вариантом.

Флажки с принудительным выбором

Стиль кнопки (одиночный / множественный выбор)

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

Селектор в стиле кнопки

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

Выбор жанра Apple Music при регистрации. Изображение: https://www.businessinsider.com/apple-will-shut-down-beats-music-on-november-30-2015-11?IR=T

Переключатель (одиночный выбор)

Переключатель (toggle) чаще всего используется для настроек и позволяет пользователю выбирать между вариантами да / нет.

На мобильном устройстве сам переключатель обычно находится в крайнем правом положении, а метка – в крайнем левом. Это сделано для того, чтобы большому пальцу правой руки было легче менять параметры.

Пример переключателя

5. Состояния

Флажки и радиокнопки должны изменять свое состояние / внешний вид, чтобы пользователи знали, что они были выбраны. Нам нужно добавить эти маленькие визуальные подсказки, чтобы подтолкнуть пользователя в правильном направлении, используя паттерны, которые они уже знают и понимают.

По умолчанию / активно (Default/active)

Это начальное состояние селекторов. Это состояние указывает пользователю, что он может кликать по пунктам в вопросах.

Пример радиокнопок и флажков в их стандартном / активном состоянии

Неактивно (Inactive)

Когда установлено неактивное состояние, пользователь не сможет взаимодействовать с вариантами ответа. Пользователь редко сталкивается с этим состоянием, если это не указано в правилах продукта.

Пример радиокнопок и флажков в их неактивном состоянии

Наведение курсора (Hover)

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

Пример радиокнопок и флажков в состоянии наведения курсора

Совет для нубов: у сенсорных устройств нет состояния наведения курсора

Фокус / выделение (Focus/highlighted)

Фокус или выделенное состояние обычно обозначается синим ореолом вокруг активируемого кликом элемента. Вы можете убедиться в этом сами, щелкнув по интерфейсу. Пользователь редко сталкивается с этим состоянием, если только не нажмет «Enter», чтобы выбрать элемент.

Пример радиокнопок и флажков в их состоянии фокуса / выделения

Нажато (Pressed)

Это состояние, когда пользователь удерживает свою мышь / палец, и элемент указывает пользователю, что на него нажимают.

Пример радиокнопок и флажков в их нажатом состоянии

Выбрано (Selected)

После того, как пользователь щелкнул по элементу, интерфейс должен сообщить ему об этом. Как упоминалось ранее, радиокнопки могут иметь только один выбранный элемент, а флажки могут иметь несколько, в зависимости от бизнес-правил.

Пример радиокнопок и флажков в их выбранном состоянии

Ошибка обратной связи (Fail feedback)

При свободном вводе текста пользователь может сделать опечатку и т. д. Однако, поскольку параметры в селекторе предопределены, должен быть только один тип обратной связи при ошибке: «incomplete», который пользователь получит только, если нажмет кнопку «отправить» до того, как закончат заполнение формы. Для флажков это будет необходимо, только если вопрос заставит их выбрать один или несколько элементов.

Пример радиокнопок и флажков в состоянии ошибки

6. Правила для текста метки

Существует только одно жесткое правило для меток селектора: быть последовательным.

  1. Убедитесь, что регистр на каждой метке селектора одинаков (регистр предложений, регистр заголовков и т. д.)
  2. Убедитесь, что все элементы либо заканчиваются точкой, либо нет.
  3. Постарайтесь убедиться, что все элементы являются либо предложением, либо фразой, либо словом. Старайтесь избегать, чтобы часть вариантов была предложениями, а другая – отдельными словами. Использование комбинации усложняет решение вопроса о том, какой регистр и пунктуацию использовать.

Пример меток элементов

7. Когда вы должны их использовать

Когда следует использовать радиокнопки или флажки? Это целиком зависит от того, какой вопрос вы задаете. Если вы хотите, чтобы пользователи выбрали несколько вариантов ответа, используйте флажки. Если хотите, чтобы пользователи выбрали только один вариант, используйте радиокнопки (или другой тип селектора).

Когда использовать радиокнопки

У меня есть четыре правила, когда использовать радиокнопки. Вот они:

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

Сравнение раскрывающегося списка и радиокнопок

При этом, если пространство не является проблемой, возможно, стоит использовать радиокнопки – особенно, если вы проектируете для мобильных устройств. Я видела, что это идеально подходит для служб доставки еды.

Если хотите узнать больше о раскрывающихся списках, прочитайте мою предыдущую статью.

  1. Вы хотите принудить выбрать один вариант ответа

Когда вы выбираете элемент в списке радиокнопок, вы не можете отменить его выбор. Вы можете выбрать что-то еще и изменить выбор, но вы не можете отменить ответ на вопрос, если уже выбрали его.

  1. Если у вопроса есть только два варианта: да / нет

Если ваш вопрос «Хотите получать уведомления?», «Воспроизвести фоновую музыку?» и т. д., то лучше используйте переключатель. Они занимают гораздо меньше места, являются более понятными, и поскольку это относительно новый тип селектора, они модные.

Сравнение радиокнопок и переключателя

Дополнение к статье после ее публикации:

5. Если хотите, чтобы пользователи нажимали «Сохранить» для применения выбранного варианта

Если вы находитесь на странице настроек или в месте, где вы хотите, чтобы пользователь мог экспериментировать с параметрами, прежде чем он нажмет большую зеленую кнопку «Сохранить»– лучше использовать радиокнопки (или флажки). Однако, если вы хотите, чтобы ваши настройки были применены немедленно (включение / выключение Wi-Fi), лучше используйте переключатель.

Этот вариант предложил Thomas Veit_, спасибо ему:)

_6. Если метки варианта ответа короткие, рассмотрите возможность использования переключателя с множественным выбором

Вы очень редко будете встречать этот вариант. Переключатели со множественным выбором соединяют в себе лучшее от радиокнопок и переключателей. Компактные, аккуратные и удобные. Я бы рекомендовал использовать их только в том случае, если метки ответов короткие – в противном случае это может стать неудобным на мобильных устройствах.

Пример переключателя с множественным выбором

Этот вариант предложил Thomas Weitz, спасибо ему.

Когда использовать флажки

У меня есть два правила, когда использовать флажки, и вот они:

  1. Если вы хотите, чтобы пользователь мог выбрать несколько вариантов или вообще не выбирать

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

  1. Один элемент

Тест: почему пункт «Я прочитал условия» всегда в виде флажка, а не радиокнопки? Ведь имеет смысл использовать радиокнопку, так как это лучший тип селектора для вопросов «да / нет»?

Ответ: потому что вы можете отменить его выбор. В отличие от радиокнопок только с одним элементом, где вы не можете отменить его. Если вы нажмете на него, он будет выбран НАВСЕГДА.

8. Проверка доступности

Вы сделали это! Вы завершили проектирование своих селекторов, и пришло время отправить их команде разработчиков. Но погодите! Вы проверили их доступность?

  1. Соответствует ли ваш селектор стандартам цветового контраста WCAG AAA? Вместо этого некоторые дизайнеры используют стандарты АА. Моя любимая программа проверки контрастности – WebAIM.
  2. Варианты ответа / элементы больше, чем 44px для сенсорных экранов? (Иногда используют 36px.)
  3. Расстояние между каждым вариантом ответа / элементом больше 8px?
  4. Всегда ли видна метка / вопрос?
  5. Есть ли в соответствующих полях полезный текст обратной связи? (Например, «Пожалуйста, заполните этот вопрос»)

Подробнее: https://webaim.org/techniques/forms/controls

9. Мысли в заключение

После этой статьи я собираюсь отойти от темы паттернов интерфейса форм и перейти к другим типам паттернов интерфейса. НО, если вы хотите, чтобы я рассмотрела другие типы полей формы, сообщите об этом в комментариях.

Берегите себя, ибо сейчас мир совсем обезумел.


Перевод статьи uxdesign.cc

стоит ли по умолчанию выбирать ответ за пользователя — Дизайн на vc.ru

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

Традиции

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

Выбор варианта по умолчанию

Выбор радиокнопки заранее — это хорошо с точки зрения юзабилити и элегантности дизайна. Плюсы такого решения не в его традиционности, а в том, что оно позволяет дать пользователям больше контроля над своими действиями, ускорить решение задачи и облегчает выбор.

Контроль и соответствие ожиданиям

Одна из 10 эвристических аксиом UI-дизайна гласит, что у пользователя должна быть возможность отменить (и произвести заново) совершенное действие. Это значит, что интерфейс после изменения должен уметь «откатываться» к первоначальному состоянию. Большинство элементов управления среди своих состояний имеют и опцию «отменить выбор» (un-choose), но на радиокнопку нельзя ткнуть, чтобы отменить её выбор. Такая модель поведения непривычна и путает людей, они начинают злиться, обновлять страницу, по много раз кликать на радиокнопку без всякого эффекта. Если делать выбор по-умолчанию, то подобных ситуаций можно легко избежать — пользователь просто переставит селектор на нужную радиокнопку.

Ускорение решения задачи

Если известно, что один из предлагаемых вариантов ответа является самым популярным, то логично выбрать эту радиокнопку по умолчанию. С помощью данного шага можно снизить время, которое пользователь потратит на взаимодействие с интерфейсом, он сможет решить задачу за меньшее число кликов. В качестве примера Пернис приводит собственный опыт. Однажды она зарегистрировалась на сайте Care.com, с помощью которого можно найти человека для ухода за домашним питомцем, например, на время отъезда его хозяина в отпуск. После того, как такой помощник был найден, руководитель Nielsen Norman Group решила отменить свое членство на сервисе. 

Страница отписки на сайте содержала две радиокнопки для подтверждения или отмены действия. Текст первой звучал как «Да, переключить мой аккаунт на другой тариф и сэкономить до 83%» и «Нет, продолжить отмену подписки». Если бы второй вариант — который и был правильным для отмены — не был выбран по умолчанию, то непонятный текст первой кнопки (особенно путает тот факт, что она начинается с утверждения) мог бы заставить многих пользователей вместо отписки просто сменить тарифный план. При этом, изначальный выбор нужной кнопки помогает людям один раз кликнуть на кнопку «Continue» и решить задачу.

Противоположный пример — на сайте Департамента транспорта штата Массачусетс есть два варианта оплаты: электронные деньги или кредитная карта, но по умолчанию ни один из вариантов не выбран:

Изучение статистики сайта могло бы легко дать ответ на вопрос о том, какой метод оплаты является наиболее популярным, и тогда осталось бы просто выбрать эту радиокнопку по умолчанию, сэкономив пользователям время.

Облегчение выбора

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

Помощь

Дефолтные подсказки полезны в ситуации, когда пользователю предлагается сделать выбор из незнакомых ему опций. Например, если надписи на кнопках сделаны на иностранном языке, заранее выбранный ответ может помочь человеку продвинуться дальше. Хорошей иллюстрацией является диалог с выбором типа установки Dropbox — обычная установка выбрана в качестве ответа по умолчанию, что наверняка устраивает абсолютное большинство пользователей. 

Направление пользователя

Нет никакого секрета в том, что владельцы сайтов хотят, чтобы их посетители совершали определенные, выгодные для бизнеса действия. Выбор радиокнопки по умолчанию может этому способствовать. В качестве примера Кара Пернис приводит сайты, собирающие пожертвования. Отдать кому-то деньги — это довольно чувствительный момент. При этом, по мнению эксперта, в зависимости от работы с радиокнопками, в подобное ситуации события могут развиваться по двум сценариям:

Сценарий №1: Человек планирует пожертвовать $30

Увидев радиокнопки он:

  • Решает, что $30 — это меньше, чем организация хотела бы получить, поэтому он вообще не жертвует денег. Очевидно, это негативный исход как для компании, так и для пользователя;
  • Наоборот, жертвует целых $50, то есть превосходит свои первоначальные планы по затратам. Для организации это позитивная ситуация, чего не скажешь о пользователе, ведь он потратил больше, чем собирался.

Сценарий №2: Человек планирует пожертвовать $10000

Увидев радиокнопки он:

  • Решает, что отдавать такую кучу денег — это сумасшествие, и жертвует куда меньшую сумму. Это негативное развитие событий для организации;
  • Следуя подсказке (выбранной радиокнопке) жертвует $50, а остальные $9950 направляет на другие цели. Снова налицо негативное развитие событий для организации.

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

Если же собрать информацию, которой можно было бы доверять, невозможно, то эксперт Nielsen Norman Group советует предусмотреть в интерфейсе дополнительные элементы управления, помимо радиокнопок. Пример — сайта Фонда защиты дикой природы, где помимо радиокнопок присутствует и поле для ввода нужной суммы вручную:

Другой фонд защитников природы пошел по иному пути и реализовал на своем сайте несколько радиокнопок с конкретными суммами пожертвований от $25 до $5000, явно намекая пользователям, что организация рассчитывает получить от них, как минимум $25.

По умолчанию выбран вариант пожертвования в размере $50 — по всей видимости, это наиболее «популярная» сумма у жертвователей. При этом, такой подход позволяет пользвователям понять, что есть люди, которые жертвуют по несколько тысяч долларов. Сайт как бы говорит таким пользователям: «Мы хотели бы получить от вас $5000, но, если что, нам хватит и $50» — это культурное и скромное поведение располагает людей, кто-то после такого можно повысить сумму пожертвования с $100, до, к примеру, $500.

Аргументы против выбора по умолчанию

Противники выбора радиокнопок по умолчанию приводят в пример ситуацию, когда такое поведение сайта будет восприниматься некорректно: заранее указать пол и семейное положение человека (Mr., Mrs., Ms., или Miss) невозможно, поэтому все радиокнопки оставляют «пустыми».

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

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

По мнению эксперта лучше позаботиться о том, чтобы страница была легко читаемой, и пользователь, попавший на нее, мог самостоятельно решить, подтверждать ли выбор по умолчанию или нет. Кроме того, можно добавить дополнительное диалоговое окно для подтверждения. Если все сделать правильно, то выбор, сделанный за пользователя, только поможет ему.

Редакция ЦП поинтересовалась у отечественных профессионалов, как именно они используют радиокнопки считают ли, что выбор можно сделать и за пользователей:

Павел Скрипкинведущий дизайнер в Mail.Ru

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

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

Если при проектировании возникла задача «выключить радиоприемник», стоит задуматься: «Подходящий ли элемент интерфейса я использую». Например, вы проектируете веб-интерфейс для голосования на выборах президента. И вы ставите в ряд радиокнопки «Кандидат 1», «Кандидат 2», «Кандидат N», «Против всех». В такой ситуации нет очевидного ответа, какую радиокнопку ставить по умолчанию. Ведь она даст фору какому-то кандидату или проявлению нигилизма. Как бы ни хотелось, в такой ситуации использовать радиокнопки нельзя. Опишите всех кандидатов и поставьте поле ввода с кнопкой «Проголосовать» внизу. А радиокнопки оставьте для следующего интерфейса

Артур Касимовпродакт-дизайнер в «Яндексе»

Я придерживаюсь мнения, что по умолчанию не должно быть выбранных радиокнопок. Утверждение о том, будто выбранная по умолчанию радиокнопка позволяет сократить время выполнения задачи, ложно.

Странно думать, что пользователь, увидев выбранный по умолчанию вариант, понадеется и не станет читать описание, согласитесь? Возможно, такие наивные пользователи найдутся, но будут немногочисленны. Особенно раздражают значения по умолчанию в формах, связанных с оплатой, бронированием и т.д. Позвольте, пожалуйста, я сам буду выбирать, каким способом я расстанусь со своими деньгами. Куда более действенный способ, обратить внимание на конкретный вариант — подписать его, как рекомендованный.

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

Роман Храмоварт-директор и владелец студии Cuberto
Сейчас уже вроде даже ребенок знает что, если ресурс посещает много людей – значит это хорошо, а для предприимчивых людей хорошо оборачивается в большие деньги.

Думаю, что владельцы ресурсов больше беспокоятся о том чтобы:

  1. Сделать регистрацию, покупку, подписку и тд. как можно более простую и быструю.
  2. Как можно дольше удержать людей на ресурсе, даже если они приняли решение отказаться от услуги или подписки.

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

Другими словами, нам постоянно аккуратно навязывают какое-либо решение, даже если оно не очень подходит нам. Ставят выбранный радиобатон, пишут рядом recommended и вуаля, пользователь не задумываясь идет по заранее заготовленному сценарию. В статье приводятся примеры, когда выбор предлагают сделать пользователю, но зачастую этот выбор никак не влияет на владельца ресурса. Заплатить электронным чеком или картой, да не важно! Важнее по дефолту выбрать сколько платить.

Отношусь ли я к этому плохо? Нет, я придумываю такие же сценарии при разработке приложений. Это бизнес, люди тратят деньги, чтобы потом заработать и для этого придумывают наиболее эффективные сценарии.

Radiobutton и Checkbutton. Переменные Tkinter. Урок 5

В Tkinter от класса Radiobutton создаются радиокнопки, от класса Checkbutton – флажки.

Радиокнопки не создают по одной, а делают связанную группу, работающую по принципу переключателей. Когда включена одна, другие выключены.

Экземпляры Checkbutton также могут быть визуально оформлены в группу, но каждый флажок независим от остальных. Каждый может быть в состоянии «установлен» или «снят», независимо от состояний других флажков. Другими словами, в группе Checkbutton можно сделать множественный выбор, в группе Radiobutton – нет.

Radiobutton – радиокнопка

Если мы создадим две радиокнопки без соответствующих настроек, то обе они будут включены и выключить их будет невозможно:

Эти переключатели никак не связаны друг с другом. Кроме того для них не указано исходное значение, должны ли они быть в состоянии «вкл» или «выкл». По-умолчанию они включены.

Связь устанавливается через общую переменную, разные значения которой соответствуют включению разных радиокнопок группы. У всех кнопок одной группы свойство variable устанавливается в одно и то же значение – связанную с группой переменную. А свойству value присваиваются разные значения этой переменной.

В Tkinter нельзя использовать любую переменную для хранения состояний виджетов. Для этих целей предусмотрены специальные классы-переменные пакета tkinterBooleanVar, IntVar, DoubleVar, StringVar. Первый класс позволяет принимать своим экземплярам только булевы значения (0 или 1 и True или False), второй – целые, третий – дробные, четвертый – строковые.

r_var = BooleanVar()
r_var.set(0)
r1 = Radiobutton(text='First',
                 variable=r_var, value=0)
r2 = Radiobutton(text='Second',
                 variable=r_var, value=1)

Здесь переменной r_var присваивается объект типа BooleanVar. С помощью метода set он устанавливается в значение 0.

При запуске программы включенной окажется первая радиокнопка, так как значение ее опции value совпадает с текущим значением переменной r_var. Если кликнуть по второй радиокнопке, то она включится, а первая выключится. При этом значение r_var станет равным 1.

В программном коде обычно требуется «снять» данные о том, какая из двух кнопок включена. Делается это с помощью метода get экземпляров переменных Tkinter.

from tkinter import *
 
 
def change():
    if var.get() == 0:
        label['bg'] = 'red'
    elif var.get() == 1:
        label['bg'] = 'green'
    elif var.get() == 2:
        label['bg'] = 'blue'
 
 
root = Tk()
 
var = IntVar()
var.set(0)
red = Radiobutton(text="Red",
                  variable=var, value=0)
green = Radiobutton(text="Green",
                    variable=var, value=1)
blue = Radiobutton(text="Blue",
                   variable=var, value=2)
button = Button(text="Изменить",
                command=change)
label = Label(width=20, height=10)
red.pack()
green.pack()
blue.pack()
button.pack()
label.pack()
 
root.mainloop()
 

В функции change в зависимости от считанного значения переменной var ход выполнения программы идет по одной из трех веток.

Мы можем избавиться от кнопки «Изменить», связав функцию change или любую другую со свойством command радиокнопок. При этом не обязательно, чтобы радиокнопки, объединенные в одну группу, вызывали одну и ту же функцию.

from tkinter import *
 
 
def red_label():
    label['bg'] = 'red'
 
 
def green_label():
    label['bg'] = 'green'
 
 
def blue_label():
    label['bg'] = 'blue'
 
 
root = Tk()
 
var = IntVar()
var.set(0)
Radiobutton(text="Red", command=red_label,
            variable=var, value=0).pack()
Radiobutton(text="Green", command=green_label,
            variable=var, value=1).pack()
Radiobutton(text="Blue", command=blue_label,
            variable=var, value=2).pack()
label = Label(width=20, height=10, bg='red')
label.pack()
 
root.mainloop()

Здесь метка будет менять цвет при клике по радиокнопкам.

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

from tkinter import *
 
 
def paint(color):
    label['bg'] = color
 
 
class RBColor:
    def __init__(self, color, val):
        Radiobutton(
            text=color.capitalize(),
            command=lambda i=color: paint(i),
            variable=var, value=val).pack()
 
 
root = Tk()
 
var = IntVar()
var.set(0)
RBColor('red', 0)
RBColor('green', 1)
RBColor('blue', 2)
label = Label(width=20, height=10, bg='red')
label.pack()
 
root.mainloop()

В двух последних вариациях кода мы не используем метод get, чтобы получить значение переменной var. В данном случае нам это не требуется, потому что цвет метки меняется в момент клика по соответствующей радиокнопке и не находится в зависимости от значения переменной. Несмотря на это использовать переменную в настройках радиокнопок необходимо, так как она обеспечивает связывание их в единую группу и выключение одной при включении другой.

Checkbutton – флажок

Флажки не требуют установки между собой связи, поэтому может возникнуть вопрос, а нужны ли тут переменные Tkinter? Они нужны, чтобы снимать сведения о состоянии флажков. По значению связанной с Checkbutton переменной можно определить, установлен флажок или снят, что в свою очередь повлияет на ход выполнения программы.

У каждого флажка должна быть своя переменная Tkinter. Иначе при включении одного флажка, другой будет выключаться, так как значение общей tkinter-переменной изменится и не будет равно значению опции onvalue первого флажка.

from tkinter import *
root = Tk()
 
 
def show():
    s = f'{var1.get()}, ' \
        f'{var2.get()}'
    lab['text'] = s
 
 
frame = Frame()
frame.pack(side=LEFT)
 
var1 = BooleanVar()
var1.set(0)
c1 = Checkbutton(frame, text="First",
                 variable=var1,
                 onvalue=1, offvalue=0,
                 command=show)
c1.pack(anchor=W, padx=10)
 
var2 = IntVar()
var2.set(-1)
c2 = Checkbutton(frame, text="Second",
                 variable=var2,
                 onvalue=1, offvalue=0,
                 command=show)
c2.pack(anchor=W, padx=10)
 
lab = Label(width=25, height=5, bg="lightblue")
lab.pack(side=RIGHT)
 
root.mainloop()

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

Опцию offvalue можно не указывать. Однако при ее наличии можно отследить, выключался ли флажок.

С помощью методов select и deselect флажков можно их программно включать и выключать. То же самое относится к радиокнопкам.

from tkinter import *
 
 
class CheckButton:
    def __init__(self, master, title):
        self.var = BooleanVar()
        self.var.set(0)
        self.title = title
        self.cb = Checkbutton(
            master, text=title, variable=self.var,
            onvalue=1, offvalue=0)
        self.cb.pack(side=LEFT)
 
 
def ch_on():
    for ch in checks:
        ch.cb.select()
 
 
def ch_off():
    for ch in checks:
        ch.cb.deselect()
 
 
root = Tk()
 
f1 = Frame()
f1.pack(padx=10, pady=10)
checks = []
for i in range(10):
    checks.append(CheckButton(f1, i))
 
f2 = Frame()
f2.pack()
button_on = Button(f2, text="Все ВКЛ",
                   command=ch_on)
button_on.pack(side=LEFT)
button_off = Button(f2, text="Все ВЫКЛ",
                    command=ch_off)
button_off.pack(side=LEFT)
 
root.mainloop()

Практическая работа

Виджеты Radiobatton и Checkbutton поддерживают большинство свойств оформления внешнего вида, которые есть у других элементов графического интерфейса. При этом у Radiobutton есть особое свойство indicatoron. По-умолчанию он равен единице, в этом случае радиокнопка выглядит как нормальная радиокнопка. Однако если присвоить этой опции ноль, то виджет Radiobutton становится похожим на обычную кнопку по внешнему виду. Но не по смыслу.

Напишите программу, в которой имеется несколько объединенных в группу радиокнопок, индикатор которых выключен (indicatoron=0). Если какая-нибудь кнопка включается, то в метке должна отображаться соответствующая ей информация. Обычных кнопок в окне быть не должно.

Помните, что свойство command есть не только у виджетов класса Button.

Курс с примерами решений практических работ: android-приложение, pdf-версия.

100 компонентов Delphi — RadioGroup, RadioButton и GroupBox

100 компонентов Delphi — RadioGroup, RadioButton и GroupBox

5.4 Группы радиокнопок — компоненты RadioGroup, RadioButton и GroupBox

Радиокнопки образуют группы взаимосвязанных индикаторов, из которых обычно может быть выбран только один. Они используются для выбора пользователем одной из нескольких взаимоисключающих альтернатив, например, отдела, в котором работает сотрудник, или пола сотрудника. Впрочем, радиокнопки могут использоваться и для отображения аналогичных данных. В этом случае управление кнопками осуществляется программно. Несколько примеров организации размещения радиокнопок вы можете увидеть на рис. 5.1 в разделе 5.1.

Начнем рассмотрение радиокнопок с компонента RadioGroup — панели группы радиокнопок. Это панель, которая может содержать регулярно расположенные столбцами и строками радиокнопки. Надпись в левом верхнем углу панели (см. рис. 5.1) определяется свойством Caption. А надписи кнопок и их количество определяются свойством Items, имеющим тип TStrings. Щелкнув на кнопке с многоточием около этого свойства в окне Инспектора Объектов, вы попадете в редактор списков строк, который уже рассматривался нами в разделе 3.3.4 (рис. 3.9). В нем вы можете занести надписи, которые хотите видеть около кнопок, по одной в строке. Сколько строчек вы запишете — столько и будет кнопок. Например, для компонента RadioGroup в верхней правой части формы рис. 5.1 свойство Items имеет вид:

бухгалтерия
администрация
цех 1
цех 2
цех 3
цех 4

Кнопки, появившиеся в панели после задания значений Items, можно разместить в несколько столбцов (не более 17), задав свойство Columns. По умолчанию Columns = 1, т.е. кнопки размещаются друг под другом.

Определить, какую из кнопок выбрал пользователь, можно по свойству ItemIndex, которое показывает индекс выбранной кнопки. Индексы, как всегда в Delphi, начинаются с 0. По умолчанию ItemIndex = -1, что означает отсутствие выбранной кнопки. Если вы хотите, чтобы в момент начала выполнения приложения какая-то из кнопок была выбрана (это практически всегда необходимо), то надо установить соответствующее значение ItemIndex во время проектирования. Если вы используете радиокнопки не для ввода, а для отображения данных, устанавливать значение ItemIndex можно программно во время выполнения приложения.

Компонент RadioGroup очень удобен, но не свободен от некоторых недостатков. Его хорошо использовать, если надписи кнопок имеют примерно одинаковую длину и если число кнопок в каждом столбце (при размещении их в нескольких столбцах) одинаково. Посмотрите, например, рис. 5.1 из раздела 5.1. Группа радиокнопок в нижнем левом углу формы имеет нормальный вид. А группа аналогичных радиокнопок в верхней правой части формы выглядит плохо: она занимает слишком много места, которое пропадает в пустую. Связано это с тем, что длина надписей у кнопок первого столбца превышает длину надписей у остальных кнопок. A RadioGroup при размещении кнопок ориентируется на надпись максимальной длины. Еще хуже выглядела бы эта группа, если бы число кнопок было, например, равно 5.

В подобных случаях желательно нерегулярное расположение кнопок. Такую возможность дают компоненты RadioButton, сгруппированные панелью GroupBox. Панель GroupBox выглядит на форме так же, как RadioGroup (см. рис. 5.1), и надпись в ее верхнем левом углу также определяется свойством Caption. Эта панель сама по себе пустая. Ее назначение — служить контейнером для других управляющих элементов, в частности, для радиокнопок RadioButton. Отдельная радиокнопка RadioButton особого смысла не имеет, хотя и может служить индикатором, включаемым и выключаемым пользователем. Но в качестве индикаторов обычно используются другие компоненты — CheckBox. А радиокнопки имеют смысл, когда они взаимодействуют друг с другом в группе. Эта группа и объединяется единым контейнером, обычно панелью GroupBox.

Рассмотрим свойства радиокнопки RadioButton. Свойство Caption содержит надпись, появляющуюся около кнопки. Значение свойства Alignment определяет, с какой стороны от кнопки появится надпись: taLeftJustify — слева, taRightJustify — справа (это значение принято по умолчанию). Свойство Checked определяет, выбрана ли данная кнопка пользователем, или нет. Поскольку в начале выполнения приложения обычно надо, чтобы одна из кнопок группы была выбрана по умолчанию, ее свойство Checked надо установить в true в процессе проектирования. Если вы поэкспериментируете, то заметите, что и во время проектирования можно установить в true значение Checked только у одной кнопки из группы.

Размещение кнопок RadioButton в панели GroupBox, как можно видеть из рис. 5.1 раздела 5.1, дает большую свободу по сравнению с компонентом RadioGroup и позволяет разместить кнопки не регулярно.

Радиокнопки RadioButton могут размещаться не только в панели GroupBox, но и в любой панели другого типа, а также непосредственно на форме. Группа взаимосвязанных кнопок в этих случаях определяется тем оконным компонентом, который содержит кнопки. В частности, для радиокнопок, размещенных непосредственно на форме, контейнером является сама форма. Таким образом, все кнопки, размещенных непосредственно на форме, работают как единая группа, т.е. только в одной из этих кнопок можно установить значение Checked в true.


RadioButton и разработка приложений для Android

RadioButton и разработка приложений для Android.

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

Для размещения картинок — ImageView, для текстов — TextView, для выполнения нажатий — Button и ImageButton, для работы с датами и со временем — CalendarView, DatePicker, Chronometer…

Элемент, с которым мы научимся работать в этой главе, имеет тоже вроде бы понятное название, но не совсем: RadioButton. Ну, с Button все достаточно ясно: это «кнопка», пусть даже внешне и не совсем на кнопку похожая, но наверняка предназначенная для того чтобы по ней щелкали («кликали»). А вот при чем тут радио?

Знаете в чем одна важная особенность радиоприемника? В том, что он, с одной стороны, позволяет переключаться между разными станциями, а с другой — в каждый данный момент позволяет настраиваться только на одну-единственную станцию. Это же просто обязательное и необходимое качество: не слышать никогда более одной станции! Ну, кому, скажите мне, нужна ситуация, когда из динамиков звучат одновременно две радиостанции?!

Вот и компонент RadioButton предназначен для того же: когда их несколько, они позволяют пользователю выбирать разные варианты («переключаться со станции на станцию’), но при этом — никогда (!) не позволяют выбрать более одного варианта! Отсюда и название…

Для объединения нескольких элементов типа RadioButton в одну группу, внутри которой можно будет выбрать любой, но каждый раз лишь один-единственный, существует еще один тип компонента — RadioGroup. Именно так и следует работать: создать компонент типа RadioGroup, а потом поместить в него нужное количество элементов типа RadioButton. Требуется добавить еще один вариант выбора? Создаем еще один компонент типа RadioGroup, добавляем в него нужное число компонент типа RadioButton… ну, и так далее. Внутри каждой «группы радиокнопок» можно выбрать только одну из всех, но можно выбрать две «радиокнопки», если каждая из них относится к отдельной «группе радиокнопок».

Создайте аппликацию, которая, после нажатия на элемент типа Button будет создавать случайное целое число. Число должно быть создано или из диапазона 1…9, или из диапазона 10… 99, или из диапазона 100… 999. Перед нажатием пользователь может указать с помощью элементов типа RadioButton, из какого диапазона в данный момент требуется сгенерировать случайное число. Аппликация будет называться RandomNumbers002.

В этой аппликации мы не будем заниматься предварительной планировкой дизайна экрана, потому что на нем нам потребуется разместить достаточно простую группу элементов:

— «наклейку» для показа случайных чисел;

— «радиогруппу» с тремя «радиокнопками» для выбора диапазона случайных чисел;

— «кнопку» для вызова метода генерации и показа случайного числа.

Где расположены компоненты TextView и Button, вы помните, там же найдете и компонент RadioButton, а вот компонент RadioGroup находится в категории Containers:

Порядок перетаскивания элементов будет следующий: TextView, потом RadioGroup, потом внутрь RadioGroup, один за другим, три RadioButton, и, последним, — Button.

Надписи, в этот раз, сделаем не в файле strings.xml, а прямо в свойствах элементов (просто чтобы напомнить, что можно делать и так). Разумеется, надо присвоить компонентам идентификаторы и поработать хотя бы над минимальным дизайном (полный код — в конце главы).

Структура компонентов экрана будет вот такой:

Запускаем аппликацию на исполнение, чтобы проверить, что все компоненты корректно отображаются на экране.

Обязательно «пощелкайте» по «радиокнопкам»: необходимо убедиться, что в один момент времени можно выбрать только одну из них, и никогда больше одной. Именно так и работает? Отлично, можно продолжать. Удается выбрать несколько одновременно? Надо вернуться в xml-файл и проверить, что все «радиокнопки» находятся внутри одного и того же контейнера RadioGroup.

К слову, в наше время всевозможные android приложения пользуются большим спросом не только среди крупных, но и средних+мелких компаний. Если у вас имеются некие теоретические задумки — их практическое воплощение можно доверить опытным специалистам «AppCraft». Разработка android приложений для мобильных устройств — это услуга, с которой вы можете ознакомиться более подробно перейдя по ссылке!

Вам также могут быть интересны следующие статьи:

Урок 10. Форма и элементы: флажок, радиокнопка, поле

В прошлом уроке мы изучили понятие формы. Её основная задача — объединить формы ввода данных определённого типа. Например, форма может объединить данные анкеты, теста и тд. В этом уроке мы научимся делать сами поля ввода!

За заполнение формы отвечает специальный тег <input>, у него есть атрибут type, который позволяет создать определённые заполняемые поля: текстовые поля, радиокнопки, флажки, списки, кнопки. Повторяю, все перечисленные вверху элементы доступны лишь в одном теге — <input>.

Тег <input> в HTML


<input> — это одиночный тег, с помощью которого можно создавать определённые элементы документа (текстовые поля, радиокнопки, флажки, списки, кнопки), которые предназначены для заполнения прямо на html-странице.

Ниже пример работы <input> в HTML

Демонстрация Скачать исходники

У тега <input> имеется несколько очень важных значений атрибутов.

name — атрибут, который следует всегда задавать для элемента, чтобы обработчик (скрипт) понимал, input с каким именем он обрабатывает.

<input name="name"> 
<input name="FirstName">

Так скрипт обработки поймёт, что это два разных поля.

type — данный атрибут отвечает за указание типа поля. Как уже говорилось ранее, при определённом типе input может стать радиокнопкой, флажком, списком, кнопкой, текстовым поля.

size — атрибут, указывающий размер для текстового поля, когда type указан как text. Указанные данные воспринимаются как ширина поля.

Тег <input&amp;gt имеет много других атрибутов, например, id (уникальный идентификатор поля, нужен, например, при работе с JavaScript), value (рассмотрим ниже). В статье я указал все основные атрибуты и значения, которых вполне достаточно для работы с полями input.

Атрибут type для input


Теперь давайте подробнее разберем атрибут type и его значения:

text — значение атрибута указывает на то, что будет отображено обычное текстовое поле, изначально доступное для изменения.

<input type="text" name="Идентификатор в глазах обработчика" value="Значение по умолчанию">

Атрибут value не обязателен, его можно вообще не указывать. Однако, если нужно указать значение по умолчанию, которое будет изначально отображаться в поле, то его следует заполнить.

password — превращает input в поле для заполнения пароля. Отличие от text заключается в том, что вводимые данные будут отображаться как звёздочки, а после заполнения всей формы браузер будет понимать, что в этом поле пароль и будет спрашивать, нужно ли его сохранить.

submit — подобное значение атрибута type определяет input как кнопку, при нажатии которой будет прорабатываться определённый сценарий (что такое сценарий вы узнаете позже, изучив языки PHP и JavaScript). Кнопка используется для того, чтобы отправить данные из форм к обработчику, написанному, например, на вышеуказанных языках. Есть и другие, но указал самые популярные.

reset — это ещё один вид кнопки, который обнуляет все значения в форме. после её нажатия их нужно будет заполнить заново.

<input type="reset" value="Очистить">

radio — Данное значение создает радиокнопку, то есть переключатель. Используется, как правило, для значений с небольшим количеством вариантов. Например, выбрать пол, интервал с возрастом и тп. выглядит следующим образом:
<input type="radio" name="Идентификатор в глазах обработчика, например, возраст, пол" value="Значение, которое будет отправлено">

У атрибута type задано значение radio — это радиокнопка. В значение value записывается та фраза или слово, которое вы хотите получить, если кто-то выбрал определенную радиокнопку и отправил данные.
Если, к примеру, вы хотите написать несколько радиокнопок и сделать лишь один выбор между ними, то должны указать один и тот же идентификатор в значение name, что бы обработчик понял, что это один и тот же вопрос.

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

checkbox — это поле, которое работает так же как и радиокнопка. С разницей лишь в том, что можно выделить несколько чекбоксов в качестве вариантов ответа. Также как и с радиокнопкой, если к вопросу принадлежат несколько чекбоксов, то у них атрибут name должен быть соответственно одинаково заполнен. В value соответственно будет указано значение выбранного поля.

<input type="checkbox"  name="Идентификатор в глазах обработчика" value="Значение, которое будет отправлено">

Особенности работы полей input


Тут предлагаю разобрать некоторые вопросы, с которыми также можете столкнутmcя в начале в работе с input.

Как сделать так, чтобы у пользователя сразу был выбран ответ (чекбокс или радиокнопка)?
Для этого существует одиночный атрибут checked. Его нужно указать в конце тега input. Так как атрибут одиночный, то значений у него никаких нет. Надо лишь добавить его в элемент input. Например, как в записи ниже:

<input type="radio" name="answer" value="yes" checked>

Как сделать так, чтобы напротив чекбокса или радиокнопки был виден текст, поясняющий данный выбор?
Для этого перед и после радиокнопки или чекбокса пишем тег <label>. А само пояснение вставляем также внутри тега. Рассмотрим пример:

<label><input type="checkbox" name="document" value="yes">Я прочитал соглашение</label>

Соответственно указываете в теге label, открывающем и закрывающем, сам чекбокс и нужные слова. И внимание! Даже если пользователь нажмёт на слово, то чекбокс всё равно будет выделен.

Пример использования полей input в HTML


Код HTML
<html>
  <head>
    <title>Пример использования полей input в HTML</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>

<body>
<form name="anketa" method="post" action="#">
<div>Нравится ли Вам данный сайт?
<p><label><input type="radio" name="vopros" value="yes"> Да</label></p>
<p><label><input type="radio" name="vopros" value="no"> Нет</label></p>
<p><label><input type="radio" name="vopros" value="none" checked> Трудно ответить</label></p>
</div>
<div>
Какие уроки интереснее всего?
<p><label><input type="checkbox" name="lessons" value="HTML">HTML</label></p>
<p><label><input type="checkbox" name="lessons" value="CSS">CSS</label></p>
<p><label><input type="checkbox" name="lessons" value="PHP">PHP</label></p>
</div>
<div>
Текстовой блок: 
<input type="text" name="comment">
</div>
<div>
<input type="submit" value="Отправить"> <input type="reset" value="Очистить">
</div>
</form>
</body>
</html>


Демонстрация Скачать исходники

Спасибо за внимание!

Радиокнопки: что это такое и с чего начать

Что такое радиокнопка?

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

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


Почему они называются переключателями?

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

В веб-дизайне переключатели работают точно так же. Независимо от того, работаете ли вы с радиокнопкой CSS, Javascript или HTML, нажатие на другую кнопку автоматически отменяет выбор предыдущей опции.


Радиокнопки и формы

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


Переключатель против флажка: что использовать?

Поскольку они имеют совершенно разное практическое применение, важно понимать разницу между флажком и переключателем.

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

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

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


Используйте радиокнопки, когда:
● Возможные ответы на заданный вопрос по своей природе являются взаимоисключающими. Например. ответ логически не может быть одновременно и «яблоком», и «апельсином», но должен быть либо одним, либо другим. Если некоторые пользователи потенциально могут предпочесть не выбирать ни яблоко, ни апельсин, обязательно предоставьте для этого переключатель, например, с пометкой «ни то, ни другое» или «другое», иначе они рискуют сдаться, не заполнив форму.


Установите флажок, если:

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


Создание группы переключателей

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


Как создать форму с переключателем в Framer

Создание элемента формы с переключателем легко создать с помощью компонента Radio Buttons Default. Этот компонент позволяет добавлять в прототипы полностью настраиваемые группы переключателей.Вы можете настроить стили для активного, неактивного состояния и состояния наведения, а также установить переход на определенный экран в зависимости от выбранного параметра. Все, что вам нужно сделать, это перетащить компонент на холст, чтобы начать!

Флажки и радиокнопки

Недавно я столкнулся со следующим полем на странице регистрации крупного веб-сайта. Он содержит как минимум две проектные ошибки. Посмотрите, сможете ли вы их найти, прежде чем читать дальше.

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

Ошибка № 2 заключается в том, что сначала нужно представить два вопроса, а затем поместить их в большой многословный ящик. Здесь лучше всего задать один короткий вопрос: «Да, пришлите мне информацию о других рекомендуемых продуктах, решениях, услугах и образовательных возможностях».

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

Когда использовать какие виджеты

Начиная с первого издания Inside Macintosh в 1984 году, правила использования флажков и радиокнопок были одинаковыми. Все последующие стандарты GUI и официальные веб-стандарты W3C включали одно и то же определение этих двух элементов управления:

.
  1. Радиокнопки используются, когда имеется список из двух или более взаимоисключающих вариантов, и пользователь должен выбрать ровно один вариант.Другими словами, щелчок по невыбранной радиокнопке приведет к отмене выбора любой другой кнопки, которая ранее была выбрана в списке.
  2. Флажки используются, когда есть списки вариантов, и пользователь может выбрать любое количество вариантов, включая ноль, один или несколько. Другими словами, каждый флажок не зависит от всех других флажков в списке, поэтому установка одного флажка не снимает другие.
  3. Отдельный флажок используется для одного параметра, который пользователь может включить или отключить.

Звучит достаточно просто, правда?

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

Дополнительные указания

  1. Используйте стандартные визуальные представления. Флажок должен представлять собой небольшой квадрат, отмеченный галочкой или знаком X при выборе. Радиокнопка должна представлять собой небольшой кружок, внутри которого при выборе находится сплошной круг.
  2. Визуально представьте группы вариантов как группы и четко отделите их от других групп на той же странице.Приведенный выше пример в рамке нарушает это правило, потому что из-за макета кажется, что два флажка относятся к разным темам, хотя на самом деле они являются альтернативными вариантами для одной темы.
    • Используйте подзаголовки, чтобы разбить длинный список флажков на логические группы. Это делает выбор более быстрым для сканирования и более легким для понимания. Риск заключается в том, что пользователи могут рассматривать каждую подгруппу как отдельный набор параметров, но это не обязательно фатально для флажков — каждый флажок в любом случае является независимым выбором.Однако список переключателей всегда должен выглядеть единым, чтобы его нельзя было разбить на подзаголовки.
  3. Располагайте списки вертикально , по одному варианту на строку. Если вы должны использовать горизонтальную компоновку с несколькими вариантами в строке, обязательно разместите кнопки и метки так, чтобы было совершенно ясно, какой вариант соответствует какой метке. В следующем списке, например, трудно увидеть правильный переключатель, чтобы выбрать четвертый вариант.
  4. Используйте положительную и активную формулировку для меток флажков, чтобы было ясно, что произойдет, если пользователь установит флажок.Другими словами, избегайте отрицаний, таких как «Больше не присылать мне электронные письма», что означало бы, что пользователь должен будет установить флажок, чтобы произошло что-то , а не .
    • Напишите метки для флажков, чтобы пользователи знали, что произойдет, если они отметят определенный флажок, и что произойдет, если они не отметят его.
    • Если вы не можете этого сделать, лучше использовать два переключателя — один для включения функции и один для ее отключения — и написать четкие метки для каждого из двух случаев.
  5. По возможности используйте переключатели, а не раскрывающиеся меню . Радиокнопки имеют меньшую когнитивную нагрузку, потому что они делают все варианты постоянно видимыми, чтобы пользователи могли легко их сравнивать. Радиокнопки также удобнее для пользователей, которым трудно выполнять точные движения мышью. (Ограниченное пространство может иногда вынуждать вас нарушать это правило, но старайтесь, чтобы варианты выбора были видны, когда это возможно.)
  6. Всегда предлагать выбор по умолчанию для списков переключателей .По определению, у радиокнопок всегда выбран только один параметр, и поэтому вы не должны отображать их без выбора по умолчанию. (Флажки, напротив, часто по умолчанию не выбирают ни один из параметров.)
    • Если пользователям может потребоваться воздержаться от выбора, вы должны предоставить переключатель для этого выбора, например, с пометкой «Нет». Предложение пользователям явного, нейтрального варианта клика лучше, чем требование неявного отказа от выбора из списка, особенно потому, что выполнение последнего нарушает правило, согласно которому всегда должен быть выбран только один вариант.
  7. Поскольку радиокнопки требуют только одного выбора, убедитесь, что варианты являются исчерпывающими и четко различаются . Например, в тестах с более старшими пользователями люди не могли заполнить форму, которая требовала от них выбора работы, потому что она не предлагала вариант «пенсионер». Если невозможно быть исчерпывающим, предложите кнопку с надписью «Другое», дополненную полем для ввода.
  8. Позвольте пользователям выбрать вариант, щелкнув либо саму кнопку/поле, либо ее метку : чем больше цель, тем быстрее щелкнуть в соответствии с законом Фиттса.В формах HTML вы можете легко добиться этого, закодировав каждую метку элементами
  9. Используйте флажки и переключатели только для изменения настроек, а не в качестве кнопок действий , которые что-то делают.Кроме того, измененные параметры не должны вступать в силу до тех пор, пока пользователь не нажмет командную кнопку (например, с надписью «ОК» или «Перейти к XXX», где «XXX» — это следующий шаг в процессе).
    • Если пользователь нажимает кнопку Назад , любые изменения, внесенные в флажки или переключатели на странице, должны быть отменены, а исходные настройки восстановлены. Тот же принцип, очевидно, остается в силе, если пользователь нажимает кнопку Cancel (хотя навигационные веб-страницы не нуждаются в опции отмены, поскольку кнопка Back служит той же цели).
    • Если пользователь сначала нажимает Назад , а затем Вперед , то наиболее уместно интерпретировать эту последовательность как пару Отменить-Повторить, что означает, что внешний вид элементов управления должен отображать изменения пользователя, как если бы пользователь никогда не нажимал Назад . Эти изменения по-прежнему не должны вступать в силу на серверной части, пока пользователь не нажмет «ОК» или аналогичную команду.

Почему эти рекомендации важны

Я просто придираюсь, когда настаиваю на правильном использовании флажков и переключателей? Нет.Есть веские причины следовать стандартам графического интерфейса и правильно использовать элементы управления.

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

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

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

Ни один профессиональный дизайнер взаимодействия не совершит ошибку, используя флажки, когда требуются переключатели. Различие между этими двумя элементами управления — одна из первых вещей, которым учат на любом курсе интерактивного дизайна. Итак, вот последняя причина использовать правильный виджет: если вы этого не сделаете, вас примут за любителя.

Флажки, переключатели и выбор входных данных

В этом видео используется старый пользовательский интерфейс. Скоро будет обновленная версия!

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

В этом уроке
  1. Флажки — для вариантов ответа «да» или «нет» или нескольких вариантов ответа
  2. Радиокнопки — для вопросов типа «выбери один вариант» выпадающие списки выбора

И бонусный раздел «настройка флажков и переключателей».

Перед началом работы

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

Кроме того, ознакомьтесь со стилем форм, чтобы узнать больше о стилях других элементов формы.

Флажки

Флажки позволяют пользователю выбрать несколько вариантов.

Установите  Name  для каждого флажка, чтобы их можно было идентифицировать в данных отправки формы.

Флажки имеют стиль по умолчанию . Чтобы переопределить этот стиль по умолчанию , выберите параметр Custom в настройках флажка.

Вы также можете указать, должен ли флажок быть отмечен по умолчанию, установив флажок Start Checked  .

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

Обязательно установите имя флажка на панели настроек.

Радиокнопки

Радиокнопки позволяют пользователю выбрать один вариант из множества вариантов.

Вы можете установить Значение выбора  для каждой опции для каждой кнопки, а также сгруппировать эти кнопки, присвоив им одно и то же Имя группы .

Радиокнопки имеют стиль по умолчанию . Чтобы переопределить этот стиль по умолчанию , выберите параметр Custom в настройках радио.

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

Допустим, вы хотите создать группу переключателей для вопроса со значениями да и нет .Вы можете сгруппировать две кнопки, добавив к обеим одно и то же Имя группы : «Вам нравятся долгие прогулки по пляжу?» и установить Choice Value для одного из них значение «Да», а для другого — «Нет».

Теперь предположим, что вы хотите добавить еще одну группу опций в качестве ответа на вопрос «Придете ли вы на следующую конференцию?» Значения будут: да, возможно и нет. Итак, вы добавляете три переключателя и убедитесь, что все три из них имеют одно и то же имя группы: «Посещающие». Затем вы устанавливаете значение каждого из них отдельно.

Списки выбора


Вы также можете добавить раскрывающийся список вариантов.

По умолчанию в этом раскрывающемся списке можно выбрать один вариант. Однако вы также можете Разрешить множественный выбор  , включив параметр на панели настроек «Выбрать поле».

Назовите свое поле выбора и укажите, хотите ли вы разрешить множественный выбор или нет.

Вы можете установить варианты выбора для поля выбора в дополнительных настройках ввода на панели настроек справа.

  • Щелкните значок плюса (+), чтобы добавить вариант
  • Щелкните значок карандаша, чтобы отредактировать вариант
  • Щелкните значок корзины, чтобы удалить вариант
  • Щелкните и перетащите пунктирную линию, чтобы изменить положение варианта
Установить варианты, которые вы хотите, чтобы пользователи выбирали из поля «Выбор» вашей формы

Настройка флажков и переключателей формы

Чтобы переопределить стиль флажков или переключателей по умолчанию, включите параметр Пользовательский стиль в настройках флажка или переключателя.Затем перейдите на панель «Стиль» и настройте кнопки по своему усмотрению.

И если вы когда-нибудь захотите вернуться к стилю по умолчанию, вы можете сделать это, выбрав опцию Default .

Если вы установили пользовательский стиль, затем повторно используйте то же имя класса в другой форме — убедитесь, что пользовательский параметр выбран снова.

Настройте состояние «отмечено», чтобы управлять тем, как выглядят флажки и переключатели при выборе

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

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

Попробуйте Webflow — это бесплатно

Радиокнопки — Кнопки — macOS — Руководство по интерфейсу пользователя

Радиокнопки

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

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

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

Предпочитайте стандартную кнопку вместо радиокнопки, чтобы инициировать действие. Радиокнопки предоставляют пользователю опции. Радиокнопка, которая инициирует действие, сбивает с толку и неинтуитивна.

Используйте переключатели в представлении, а не в оконной раме. Радиокнопки не предназначены для использования в частях оконных рамок, например, на панелях инструментов и в строках состояния.

Рассмотрите возможность использования метки для представления группы переключателей. Опишите набор параметров и выровняйте базовую линию метки с базовой линией заголовка первого переключателя.

Используйте постоянный интервал, когда радиокнопки расположены горизонтально. Измерьте пространство, необходимое для размещения самого длинного заголовка кнопки, и последовательно используйте это измерение.

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

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

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

Руководство для разработчиков см. в разделе NSButton.ButtonType.radio.

радиокнопок — приложения Win32

  • Статья
  • 9 минут на чтение
  • 4 участника

Полезна ли эта страница?

да Нет

Любая дополнительная обратная связь?

Отзыв будет отправлен в Microsoft: при нажатии кнопки отправки ваш отзыв будет использован для улучшения продуктов и услуг Microsoft.Политика конфиденциальности.

Представлять на рассмотрение

В этой статье

Примечание

Это руководство по проектированию было создано для Windows 7 и не обновлялось для более новых версий Windows. Большая часть рекомендаций в принципе применима, но презентация и примеры не отражают наши текущие рекомендации по проектированию.

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

Типичная группа переключателей.

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

 

Это правильное управление?

Чтобы решить, рассмотрите эти вопросы:

  • Используется ли элемент управления для выбора одного варианта из набора взаимоисключающих вариантов? Если нет, используйте другой элемент управления.Чтобы выбрать несколько вариантов, используйте флажки, список множественного выбора или список флажков.

  • Количество вариантов от двух до семи? Поскольку используемое пространство экрана пропорционально количеству опций, оставьте количество опций в группе от двух до семи. Для восьми или более вариантов используйте раскрывающийся список или список с одним выбором.

  • Не лучше ли установить флажок? Если есть только два параметра, вместо этого можно использовать один флажок.Однако флажки подходят только для включения или выключения одной опции, тогда как радиокнопки могут использоваться для совершенно разных вариантов. Если возможны оба решения:

    • Используйте переключатели, если значение снятого флажка не совсем очевидно.

      Неверно:

      Правильно:

      В правильном примере варианты не являются противоположными, поэтому радиокнопки являются лучшим выбором.

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

    • Используйте переключатели, если у вас достаточно места на экране, и параметры достаточно важны, чтобы эффективно использовать это место на экране. В противном случае используйте флажок или раскрывающийся список.

      Неверно:

      В этом примере параметры недостаточно важны для использования переключателей.

      Правильно:

      В этом примере флажок позволяет эффективно использовать пространство экрана для этого периферийного устройства.

    • Используйте флажок, если на странице есть другие флажки.

  • Будет ли лучше использовать раскрывающийся список? Если параметр по умолчанию рекомендуется для большинства пользователей в большинстве ситуаций, переключатели могут привлечь к параметрам больше внимания, чем необходимо.

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

      В этом примере раскрывающийся список фокусируется на текущем выборе и не рекомендует пользователям вносить изменения.

    • Рассмотрите раскрывающийся список, если на странице есть другие раскрывающиеся списки.

  • Что лучше: набор командных кнопок, командных ссылок или сплит-кнопки? Если радиокнопки используются только для того, чтобы повлиять на выполнение команды, часто вместо этого лучше представить варианты команды.Это позволяет пользователям выбирать правильную команду за одно действие.

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

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

  • Значения нечисловые? Для числовых данных используйте текстовые поля, раскрывающиеся списки или ползунки.

Руководство

Общий

  • Перечислите варианты в логическом порядке, например, от наиболее вероятного выбора к наименее, от простейшей операции к наиболее сложной или от наименьшего риска к наиболее. Алфавитный порядок не рекомендуется, поскольку он зависит от языка и поэтому не поддается локализации.

  • Если ни один из вариантов не является допустимым, добавьте другой вариант, отражающий этот выбор, , например «Нет» или «Не применяется».

  • Предпочтительно выравнивать переключатели по вертикали, а не по горизонтали. Горизонтальное выравнивание труднее читать и локализовать.

    Правильно:

    В этом примере переключатели выровнены по вертикали.

    Неверно:

    В этом примере горизонтальное выравнивание труднее прочитать.

  • Пересмотрите возможность использования групповых полей для организации групп переключателей — это часто приводит к ненужному беспорядку на экране.

  • Не используйте метки переключателей в качестве меток групповых полей.

  • Не использовать выбор переключателя для:

    • Выполнять команды.
    • Отображение других окон, например диалогового окна, для сбора дополнительных данных.
    • Динамически отображать или скрывать другие элементы управления, связанные с выбранным элементом управления (программы чтения с экрана не могут обнаруживать такие события). Однако вы можете динамически изменять текст в зависимости от выбора.

Подчиненные органы управления

  • Поместите подчиненные элементы управления справа или ниже (с отступом, на одном уровне с меткой переключателя) переключателя и его метки.Завершите метку переключателя двоеточием.

    В этом примере переключатель и подчиненный ему элемент управления имеют общую метку переключателя и ключ доступа. В этом случае клавиши со стрелками перемещают фокус с переключателя на подчиненное ему текстовое поле.

  • Оставьте включенными зависимые редактируемые текстовые поля и раскрывающиеся списки, если они имеют общую метку переключателя. Когда пользователи вводят или вставляют что-либо в поле, соответствующий параметр выбирается автоматически.Это упрощает взаимодействие.

    В этом примере при вводе номера страницы автоматически выбираются Страницы.

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

    Правильно:

    В этом примере параметры находятся на одном уровне.

    Неверно:

    В этом примере использование вложенных параметров добавляет ненужной сложности.

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

Значения по умолчанию

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

  • Исключения: Нет выбора по умолчанию, если:

    • Не существует приемлемого варианта по умолчанию из соображений безопасности, защиты или по юридическим причинам, поэтому пользователь должен сделать явный выбор. Если пользователь не делает выбор, отобразить сообщение об ошибке, чтобы сделать выбор принудительно.
    • Пользовательский интерфейс (UI) должен отражать текущее состояние, а параметр еще не установлен. Значение по умолчанию неправильно подразумевало бы, что пользователю не нужно делать выбор.
    • Цель — собрать объективные данные. Значения по умолчанию будут искажать сбор данных.
    • Группа переключателей представляет свойство в смешанном состоянии , что происходит при отображении свойства для нескольких объектов, у которых разные настройки. В этом случае не отображайте сообщение об ошибке, поскольку каждый объект имеет допустимое состояние.
  • Сделайте первый вариант параметром по умолчанию , так как пользователи часто ожидают этого, если только такой порядок не является логичным.Для этого вам может потребоваться изменить метки параметров.

    Неверно:

    В этом примере параметр по умолчанию не является первым.

    Правильно:

    В этом примере метки параметров изменены, чтобы сделать первый параметр параметром по умолчанию.

Рекомендуемый размер и расстояние

Рекомендуемый размер и расстояние между переключателями.

Этикетки

Этикетки радиокнопок

  • Пометьте каждую радиокнопку.
  • Назначьте каждой этикетке уникальный ключ доступа. Инструкции см. в разделе Клавиатура.

  • Используйте заглавные буквы в предложениях.

  • Напишите метку как фразу, а не как предложение, и не используйте знаки препинания в конце.

    • Исключение: Если метка радиокнопки также помечает подчиненный элемент управления, который следует за ней, в конце метки ставится двоеточие.
  • Используйте параллельные фразы и старайтесь, чтобы длина всех этикеток была примерно одинаковой.

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

  • Используйте положительные формулировки. Например, используйте do вместо do not и print вместо not print.

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

    В этом примере параметры объясняются с помощью отдельных элементов управления статическим текстом.

    Примечание

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

     

  • Если параметр настоятельно рекомендуется, добавьте к метке «(рекомендуется)». Обязательно добавляйте к контрольной этикетке, а не к дополнительным примечаниям.

  • Если опция предназначена только для опытных пользователей, добавьте к метке «(дополнительно)». Обязательно добавляйте к контрольной этикетке, а не к дополнительным примечаниям.

  • Если необходимо использовать многострочные метки, совместите верхнюю часть метки с переключателем.

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

Ярлыки групп радиокнопок

  • Используйте ярлык группы, чтобы объяснить назначение группы, а не то, как сделать выбор. Предположим, что пользователи знают, как использовать переключатели. Например, не говорите «Выберите один из следующих вариантов».

  • Все группы радиокнопок должны иметь метки. Напишите метку как слово или фразу, а не как предложение, заканчивающееся двоеточием, используя статический текст или групповое поле.

    Исключение: Пропустите метку, если это просто повторение основной инструкции диалогового окна. В этом случае основная инструкция принимает двоеточие (если это не вопрос) и ключ доступа (если он есть).

    Приемлемо:

    В этом примере метка группы переключателей — это просто повторение основной инструкции.

    Лучше:

    В этом примере лишняя метка удалена, поэтому в основной инструкции используется двоеточие.

  • Не назначать ключ доступа к этикетке. В этом нет необходимости, и это затрудняет назначение других клавиш доступа.

    • Исключение: Если не все элементы управления могут иметь уникальные клавиши доступа, вы можете назначить ключ доступа метке вместо отдельных элементов управления. Дополнительные сведения см. в разделе Клавиатура.

Документация

При обращении к переключателям:

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

Пример. Щелкните Текущая страница , а затем щелкните OK .

 

 

Радиокнопка — Carbon Design System

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

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

Форма

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

Настройки

Используется для перехода от одной настройки к другой в меню, странице или компоненте.

Выбор в списках

Используется для выбора отдельного элемента в таблицах данных или списках.

Если пользователь может выбрать несколько вариантов из списка, используйте флажки вместо радио кнопки. Радиокнопки позволяют пользователю выбрать только один элемент в наборе, тогда как флажки позволяют пользователю выбрать несколько вариантов.

Используйте флажки, если можно выбрать несколько элементов.

Не используйте переключатели, если можно выбрать несколько элементов.

Живой редактор для компонента Radio button <группа форм legendText="Заголовок переключателя" > <РадиоКнопка labelText="Ярлык радиокнопки" значение = "стандарт" /> <РадиоКнопка labelText="Ярлык радиокнопки" значение = "выбрано по умолчанию" /> <РадиоКнопка labelText="Ярлык радиокнопки" значение = "отключено" />

Компонент радиокнопки состоит из набора кликабельных кругов (кнопка inputs) с текстовыми метками, расположенными справа.Если есть группа радио кнопки, можно добавить метку группы.

  1. Метка группы радиокнопок (необязательно): Описывает группу опций или дает рекомендации по выбору.
  2. Ввод радиокнопки: Радиокнопка, указывающая соответствующее состояние. К по умолчанию выбран вариант.
  3. Метка радиокнопки: Описывает информацию, которую вы хотите выбрать или отменить выбор.

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

Вертикальное расположение по сравнению с горизонтальным выравниванием

Для языков с чтением справа налево допустимо размещать метки на слева от входов.

Пример переключателей для языков с чтением справа налево, а не слева направо

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

Радиокнопки в форме должны располагаться не менее чем на 32 пикселя ( layout-03 ) ниже или перед следующим компонентом. Интервал 24px ( layout-02 ) или 16px ( layout-01 ) также может использоваться, когда пространство более ограничено или если форма более сложная.

Расстояние между переключателем и другими компонентами в форме

Основные элементы

Групповые метки (необязательно)

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

  • Метка группы может либо указывать категорию группы, либо описывать, что действия, которые необходимо предпринять ниже.
  • Используйте регистр предложений для меток групп.
  • В некоторых случаях группа радиокнопок может находиться внутри более крупной группы компоненты, которые уже имеют групповую метку. В этом случае дополнительная группа метка для самого компонента радиокнопки не нужна.
  • Независимо от того, видна ли метка в интерфейсе, метка группы всегда нужен в коде, будь то для одного флажка или их группы.Видеть в вкладка кода переключателя Чтобы получить больше информации.
Этикетки для радиокнопок
  • Всегда используйте четкие и лаконичные этикетки для радиокнопок.
  • Четко укажите результаты, которые последуют, если переключатель выбрано.
  • Метки отображаются справа от переключателей.
  • Мы рекомендуем, чтобы метки радиокнопок содержали менее трех слов.
  • Если у вас мало места, подумайте о том, чтобы изменить формулировку этикетки. Не обрезать радио текст метки кнопки с многоточием.
  • Длинные метки могут переноситься на вторую строку, и это предпочтительнее усечения.
  • Текст должен располагаться под переключателем, чтобы элемент управления и метка были сверху выровнены.

Разрешить обтекание текста под переключателем, чтобы элемент управления и метка были выровнены по верхнему краю.

Не располагайте вертикально центрированный текст с помощью переключателя.

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

В дополнение к невыбранным и выбранным состояниям переключатели также имеют состояния для фокусировки и отключения.

Мышь

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

Клавиатура

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

Программа чтения с экрана

VoiceOver: Пользователи могут перемещаться между переключателями, нажимая Вверх и Вниз клавиши со стрелками.

JAWS: пользователи могут перемещаться между переключателями, нажимая вверх и вниз клавиши со стрелками.

NVDA: Пользователи могут перемещаться между переключателями, нажимая Вверх и Вниз клавиши со стрелками.

Набор переключателей по умолчанию должен иметь один выбранный параметр. Никогда отображать их без выбора по умолчанию.

Радиокнопки по сравнению с флажками

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

Плитка радиокнопок и стихов для выбора

Радиокнопки должны иметь краткие, удобные для сравнения варианты. Если больше информации требуется сделать выбор, например, тарифные планы или дополнительные ссылки, рассмотрите с помощью выбираемая плитка.

Структурированный список

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

Таблицы
Радиокнопка и тумблер стихов

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

Помогите нам улучшить этот компонент, оставив отзыв, задав вопросы и оставляя любые другие комментарии Гитхаб.

Флажки и переключатели

Стенограмма

ВЕДУЩИЙ: В этом руководстве рассматриваются флажки и переключатели. Мы рассмотрим, какие элементы использовать, разметку, атрибут имени, добавление подписи и стилизацию переключателей и флажков.

Первый раздел, какой элемент использовать?

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

С другой стороны, флажки

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

Второй раздел, разметка. Для переключателей и флажков требуется элемент ввода и связанный с ним элемент метки. В обоих случаях элементы метки должны быть расположены после входных данных. Эти два элемента должны быть явно связаны друг с другом с помощью атрибутов «for» и «ID».Если метка обернута вокруг ввода, содержимое метки должно идти после ввода.

Третий раздел, атрибут name. В случае радиокнопок важен атрибут имени. Значение атрибута name должно быть одинаковым для всех переключателей, используемых в одном наборе параметров. Это идентичное значение имени означает, что пользователи могут выбрать только один вариант из набора параметров. В этом примере все элементы ввода имеют атрибут name с одинаковым значением «sub.

Раздел четвертый, добавление заголовка. При представлении набора радиокнопок необходима подпись, объясняющая их назначение. Это делается путем включения набора переключателей в набор полей, а затем использования легенды в качестве подписи. В этом примере содержимое «метод подписки» будет объявлено, когда пользователь установит фокус на первом переключателе, когда он перемещается по форме. И та же информация также будет объявлена, когда пользователь установит фокус на последний переключатель при перемещении вверх по форме.

Альтернативный подход. Альтернативный подход — использовать роль aria и метку aria по атрибутам. Общий контейнер должен быть установлен с помощью атрибута роли и значения радиогруппы. Внутри контейнера необходимо поместить заголовок, который станет заголовком для этой группы переключателей. Заголовку необходимо присвоить значение идентификатора, а затем весь контейнер должен указывать на этот элемент заголовка. В этом случае оба они имеют значение sub. Это решение будет работать аналогично элементам field set и legion.Рубрика будет объявлена ​​в качестве подписи к радиогруппе.

Пятый раздел, стилизация переключателей и флажков. Одной из распространенных проблем разработчиков с переключателями и флажками является то, что их сложно визуально настроить. Некоторые разработчики решают эту проблему, используя элемент div и настраиваемые фоновые изображения вместо использования собственного элемента ввода и метки. Однако эти типы решений представляют ряд проблем с доступностью. В отличие от элементов input и label элементы div, используемые таким образом, не имеют семантического значения.И решение не имеет встроенной клавиатуры. Таким образом, пользователи, использующие только клавиатуру, часто не могут перемещаться или выбирать параметры.

Использование фоновых изображений для переключателей и флажков также создает проблемы для пользователей, использующих режим высокой контрастности. Фоновые изображения часто не отображаются в этом режиме, поэтому пользователи не могут идентифицировать эти настраиваемые переключатели или флажки. Простое решение — использовать собственные переключатели и элементы флажков, а затем использовать CSS для добавления псевдоэлемента поверх.Этому псевдоэлементу можно присвоить фоновое изображение, чтобы переключатели и флажки можно было настроить. С помощью этого решения, если фоновые изображения недоступны, отображаются собственные элементы ввода под ними. Теперь об этом будет рассказано в следующем видео.

Заключение — вот и все — простой обзор флажков и переключателей.

Добавить комментарий

Ваш адрес email не будет опубликован.