Виды кнопок в программе

Содержание
6. Сенсорные цели Размер кнопки для настольных приборов Поскольку курсор на рабочем столе меньше, чем палец на сенсорном экране, вы можете сделать кнопки намного меньше. Пользователю никогда не должен искать кнопку, поэтому вы должны определить правильную иерархию и навигацию для вашего интерфейса. Размер кнопки для сенсорного экрана Исследование MIT Touch Lab показало, что часть пальца, используемая для прикосновения к экрану, составляет 8–10 мм, поэтому минимальный целевой размер должен быть 10 мм или больше. Итак, какого размера нужно делать кнопки? Вот что говорят эксперты: Material Design считает, что цель касания должна быть 48dp x 48dp с 8dp между точками касания. 7. Размещение кнопок Спорное положение первичной кнопки Если бы вы располагали 2 кнопки рядом, на какой стороне находилась бы первичная кнопка? Вариант A показывает первичную кнопку слева. Основным аргументом является то, что пользователь первым делом смотрит налево. Вариант B показывает первичную кнопку справа. Используется для того чтобы пользователь сначала увидел дополнительную кнопку. Таким образом, он осведомлен о возможных вариантах и может сделать выбор. Элементы, расположенные справа, также указывают на продолжение. 8. Кнопка доски почета В том разделе я хочу отметить некоторые крутые принципы дизайна и систем. Мне нравятся кнопки Material Design System именно потому, что их принципы действительно хорошо продуманы. Кнопка Material Design System Ни один разговор о кнопках не будет полным без упоминания Material Design. Их работа над кнопками и то, как они взаимодействуют с другими компонентами в системе, заслуживает внимания. Просмотрите их раздел о кнопках здесь. А также информацию о плавающих кнопках действий можно просмотреть тут. 9. Заключительные мысли Создать интерфейс без кнопок нереально. Они выполняют одну из самых важных функций, именно поэтому кнопки заслуживают особого внимания. Потратьте время, чтобы понять, как они работают и как их правильно использовать. Только так вы сможете создать максимально комфортный интерфейс для ваших пользователей. Источник: say-hi.me
  • 6. Сенсорные цели
  • Размер кнопки для настольных приборов
  • Размер кнопки для сенсорного экрана
  • 7. Размещение кнопок
  • Спорное положение первичной кнопки
  • 8. Кнопка доски почета
  • Кнопка Material Design System
  • 9. Заключительные мысли
  • Привет друг!
    Я закончил работу над большим проектом, поэтому снова готов уделять время статьям и обучению. Во время столь длительного отсутствия я составил большой список полезных материалов, которыми обязательно поделюсь с тобой позже, поэтому не забудь подписаться.
    Ладно, давай ближе к делу!
    Прошлый раз мы начали формировать Starter-kit, который сбережет твоё время при создании однотипных элементов в дизайне. Если ты не читал первую статью, то обязательно ознакомься: Figma Starter Kit: (pt.1)

    Трудно представить web или mobile дизайн без кнопок. Мне кажется, это один из самых основных элементов интерфейса, именно поэтому речь сегодня пойдет об их создании. Давай я немного расскажу о типах кнопок и правилах их создания, а ниже приложу макет с уже готовыми.

    1. Типы кнопок

    Существует огромное количество типов кнопок и вариаций расположения контента в них, но для нашей цели я хочу выделить 3 основных типа:

    • Текстовая кнопка
    • Иконка + текст (Иконка может располагаться слева от текста или справа)
    • Кнопка — иконка

    Урок №4. Кнопка, типы кнопок и их применение. BeyondRobotics

    Источник: vc.ru

    Структура приложения и работа с кнопкам / tkinter 1

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

    Простой пример

    Возьмем в качестве примера следующую программу:

    from tkinter import * root = Tk()
    btn = Button(root, text=»Нажми!»)
    btn.config(command=lambda: print(«Привет, Tkinter!»))
    btn.pack(padx=120, pady=30)
    root.title(«Мое приложение Tkinter»)
    root.mainloop()

    Она создает окно с кнопкой, которая выводит Привет, Tkinter! каждый раз при нажатии. Кнопка расположена с внутренним отступом 120px по горизонтальной оси и 30px – по вертикальной. Последняя строка запускает основной цикл, который обрабатывает все пользовательские события и обновляет интерфейс до закрытия основного окна.

    Читайте также:
    Описание взаимодействия пользователя с программой

    Простое окно с кнопкой

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

    Wildcard-импорты ( from … import * ) считаются плохой практикой, поскольку они загрязняют глобальное пространство имен. Здесь они используются для иллюстрации анти-паттерна, который часто встречается в примерах онлайн.

    Эти проблемы настройки решаются с помощью базовых техник объектно-ориентированного программирования, что считается хорошей практикой для любых типов программ на Python.

    КНОПКИ ЮТУБА! Все виды кнопок You Tube по порядку

    Правильный пример

    Чтобы улучшить модуль простой программы, стоит определить несколько классов, которые станут обертками вокруг глобальных переменных:

    import tkinter as tk
    class App(tk.Tk):
    def __init__(self):
    super().__init__()
    self.btn = tk.Button(self, text=»Нажми!»,
    command=self.say_hello)
    self.btn.pack(padx=120, pady=30)

    def say_hello(self):
    print(«Привет, Tkinter!»)

    if __name__ == «__main__»:
    app = App()
    app.title(«Мое приложение Tkinter»)
    app.mainloop()

    Теперь каждая переменная хранится в конкретной области видимости, включая функцию command , которая находится в отдельном методе.

    Как работает это приложение?

    Во-первых нужно заменить wildcard-импорт на импорт в формате import … as для лучшего контроля над глобальным пространством имен.

    Затем класс App определяется как подкласс Tk , который теперь ссылается на пространство имен tk . Для правильной инициализации базового класса, вызывается метод __init__() класса Tk с помощью встроенной функции super() . За это отвечают следующие строки:

    class App(tk.Tk):
    def __init__(self):
    super().__init__()
    # .

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

    Это может казаться излишним для такой простой программы, но подобный рефакторинг помогает работать с каждой отдельной частью. Создание кнопки отделено от обратного вызова, которые исполняется при нажатии. А генерация приложения перемещена в if __name__ == «main» , что является стандартной практикой для исполняемых скриптов в Python.

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

    Дополнение о структуре приложения

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

    Однако может быть более удобно разделять классы Frame или Toplevel особенно для больших программ, где, например, есть несколько окон. Это все потому что у приложения Tkinter должен быть один экземпляр Tk , а система создает их автоматически при создании экземпляра виджета до создания экземпляра самого Tk .

    Помните, что это не влияет на структуру класса App , поскольку у всех классов виджетов есть метод mainloop , который запускает основной цикл Tk .

    Работа с кнопками

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

    Как создать кнопку

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

    import tkinter as tk

    RELIEFS = [tk.SUNKEN, tk.RAISED, tk.GROOVE, tk.RIDGE, tk.FLAT]

    class ButtonsApp(tk.Tk):
    def __init__(self):
    super().__init__()
    self.img = tk.PhotoImage(file=»python.gif»)
    self.btn = tk.Button(self, text=»Кнопка с изображением»,
    image=self.img, compound=tk.LEFT,
    command=self.disable_btn)
    self.btns = [self.create_btn(r) for r in RELIEFS]
    self.btn.pack()
    for btn in self.btns:
    btn.pack(padx=10, pady=10, side=tk.LEFT)

    def create_btn(self, relief):
    return tk.Button(self, text=relief, relief=relief)

    def disable_btn(self):
    self.btn.config(state=tk.DISABLED)

    if __name__ == «__main__»:
    app = ButtonsApp()
    app.mainloop()

    Цель программы — показать разные варианты настройки, которые могут быть использованы при создании виджета кнопки.

    После выполнения кода выше, возвращается следующее:

    Разные варианты настройки кнопок

    Простейший способ создания экземпляра Button — использование параметра text для настройки метки кнопки и command , который ссылается на вызываемую функцию при нажатии кнопки.

    В этом примере также добавляется PhotoImage с помощью параметра image , который имеет приоритет над строкой text . Этот параметр используется для объединения изображения и текста на одной кнопке, определяя местоположение, где будет находиться картинка. Он принимает следующие константы: CENTER, BOTTOM, LEFT, RIGHT и TOP.

    Второй ряд кнопок создается с помощью сгенерированного списка и списка значений RELIEF . Метка каждой кнопки соответствует константе, так что можно заметить разницу во внешнем виде.

    Для сохранения ссылки на экземпляр PhotoImage использовался атрибут, хотя его и нет вне метода __init__ . Причина в том, что изображения удаляются при сборке мусора. Это и происходит, если объявить их в качестве локальных переменных.

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

    Следующий урок: Работа с текстом (в разработке)

    Источник: pythonru.com

    Шпаргалки UI дизайнера: создание кнопок

    Кнопки – мой любимый элемент дизайна. В этой статье мы рассмотрим различные типы кнопок, виды взаимодействий и состояний. Для экономии времени сконцентрируемся на «нормальных» кнопках. Поэтому будем игнорировать переключатели, вкладки, флажки и другие подобные типы кнопок.

    Читайте также:
    Mhdd как пользоваться программой в dos

    Итак, в этой статье мы рассмотрим:

    1. Кнопки действия
    2. Общие стили кнопок
    3. Выбор цвета и стиля кнопки
    4. Состояния кнопок и обратная связь
    5. Надпись кнопки
    6. Сенсорные цели
    7. Размещение кнопок
    8. Кнопка доски почета
    9. Заключительные мысли

    1. Кнопки действия

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

    1. Кнопки призыва к действию (CTA/C2A)

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

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

    2. Первичное действие

    Хотя кнопки призыва к действию и первичного действия могут выглядеть одинаково, я бы хотел их разделить. В то время как кнопки CTA выполняют свою функцию, первичные кнопки должны быть сильным визуальным индикатором, который поможет пользователю осуществить путешествие. Такие кнопки следует использовать в ситуациях, когда пользователь хочет «Завершить», «Начать», «Далее» и так далее.

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

    3. Вторичное действие

    Вторичные кнопки – это кнопка «Назад» возле первичной кнопки «Далее». Или кнопка «Отмена» возле кнопки «Подтвердить». Вторичные кнопки – это альтернатива первичного действия, которое мы предоставляем пользователям.

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

    4. Третичное действие

    Третичные кнопки обычно используются для разных действий. Например, когда действие важно, но может не соответствовать тому, что пользователь хочет сделать в данный момент. Это может быть кнопка «добавить друга», «изменить», «добавить новое» или «удалить», при условии, что эти действия не первичные.

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

    2. Общие стили кнопок

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

    Сплошные кнопки

    Все просто, сплошные кнопки – это кнопки со сплошной заливкой.

    Контурные и призрачные кнопки

    Контурные кнопки – это кнопки без заливки. Несмотря на то, что они часто используются взаимозаменяемо, контурные кнопки обычно светлого цвета (с темным контуром и текстом), а кнопки-призраки – темного цвета (со светлым контуром и текстом).

    Закругленные кнопки

    Закругленные кнопки – это кнопки, у которых радиус углов максимально скруглен.

    Примечание: Расположенные рядом закругленные кнопки выглядят ужасно. Каждый раз, когда вы располагаете рядом несколько закругленных кнопок, где-нибудь плачет UI дизайнер.

    FAB (плавающая кнопка действия)

    Плавающие кнопки действий – это продуманное дизайнерское решение, популярное в Google Material Design. Хотя они могут выглядеть как кнопка со значком, фактически они используются для первичного действия на экране.

    Текстовая ссылка

    Текстовые ссылки – это очень простой тип кнопок. Есть несколько способов показать, что надпись является ссылкой. Это может быть цвет, подчеркивание, положение ссылки, или просто сам текст (например, «Читать дальше»).

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

    Кнопка “значок с надписью”

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

    Самое сложное в работе с такими кнопками – найти правильное соотношение иконки и шрифта.

    • Вариант 1: размер иконки соответствует высоте заглавных букв.
    • Вариант 2: размер иконки намного больше высоты строки.

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

    Кнопка-значок

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

    Иконка рядом с текстовой ссылкой

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

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

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

    1. Цвет

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

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

    Например, зеленая кнопка «Удалить» собьет с толку любого пользователя, как и красная «Сохранить».

    2. Закругление углов

    Закругление углов, а именно свойство border-radius – это то, что придает кнопкам индивидуальность. Кнопки с острыми краями выглядят более серьезно, а с закруглением более непринужденно.

    Читайте также:
    С помощью какой программы можно подписать документ электронной подписью

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

    3. Тень

    Тень на кнопке создает ощущение, будто кнопка находится за пределами страницы, и это действительно привлекает внимание. Тени также могут быть использованы для обозначения различных состояний. Material Design использует тень очень органично, делая кнопку «ближе» при наведении курсора.

    4. Стиль надписи

    Стиль надписи зависит от шрифта и от того, насколько легко его читать. При выборе шрифта убедитесь, что он разборчивый.

    Вот несколько простых способов сделать шрифт читабельным:

    1. Лучше использовать заглавные буквы в начале каждого предложения или капитализировать начальные буквы всех слов в предложении, чем делать все буквы заглавными. (Хотя Material Design использует кнопки со всеми заглавными буквами).
    2. Убедитесь, что цвет надписи выделяется на фоне кнопки. В этом поможет этот инструмент.
    3. Выбирая шрифт убедитесь, что он разборчивый и достаточно большой. Также шрифт должен быть средней плотности.

    5. Вертикальный отступ

    Размер кнопки играет большую роль в доступности интерфейса. Большинство неопытных дизайнеров скажут что-то вроде «Кнопки должны иметь высоту 36 пикселей». Это не лучшее решение, особенно для веб-дизайна. Всегда нужно учитывать высоту строки используемого вами шрифта и добавлять к нему единицу измерения. Например: «Надпись моей кнопки имеет высоту строки 20 пикселей, а отступ по вертикали 8 пикселей».

    Спросите зачем? Существует две причины:

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

    6. Горизонтальный отступ

    Первый вариант:

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

    Второй вариант:

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

    4. Состояния кнопок и обратная связь

    Состояния кнопок позволяют пользователю узнать, может ли он кликнуть или уже это успешно сделал. Также следует помнить, что кнопка может иметь несколько состояний. Например, она может быть «активной» и «зависать» одновременно.

    1. Активное и неактивное состояние

    Активное состояние – это когда кнопка «кликабельна». Хотя это покажется очевидным, важно отметить, что кнопка может быть неактивна, если пользователь не выполнил необходимые шаги. Например, если не введено имя и адрес электронной почты, пользователь не сможет нажать кнопку «Подтвердить».

    2. Hover
  • Выберите регистр: Капитализация начальной буквы только первого слова в предложении, капитализация начальных букв всех слов в предложении, все буквы заглавные, или все буквы строчные;
  • Структура надписи: Например, «глагол» + «существительное» или просто «глагол» и так далее.
  • 6. Сенсорные цели

    Размер кнопки для настольных приборов

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

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

    Размер кнопки для сенсорного экрана

    Исследование MIT Touch Lab показало, что часть пальца, используемая для прикосновения к экрану, составляет 8–10 мм, поэтому минимальный целевой размер должен быть 10 мм или больше.

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

    Material Design считает, что цель касания должна быть 48dp x 48dp с 8dp между точками касания.

    7. Размещение кнопок

    Спорное положение первичной кнопки

    Если бы вы располагали 2 кнопки рядом, на какой стороне находилась бы первичная кнопка?

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

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

    8. Кнопка доски почета

    В том разделе я хочу отметить некоторые крутые принципы дизайна и систем. Мне нравятся кнопки Material Design System именно потому, что их принципы действительно хорошо продуманы.

    Кнопка Material Design System

    Ни один разговор о кнопках не будет полным без упоминания Material Design. Их работа над кнопками и то, как они взаимодействуют с другими компонентами в системе, заслуживает внимания.

    Просмотрите их раздел о кнопках здесь.

    А также информацию о плавающих кнопках действий можно просмотреть тут.

    9. Заключительные мысли

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

    Источник: say-hi.me

    Рейтинг
    ( Пока оценок нет )
    Загрузка ...
    EFT-Soft.ru