Пользовательский интерфейс в Qt 41

Пользовательский интерфейс в Qt

Печать на сетевые принтеры и кросс-платформенные различия

Введение Печать в корпоративной среде часто означает не локальный USB-принтер, а сетевой принтер, доступный через очередь печати сервера (CUPS на Linux/macOS, диспетчер очереди печати Windows). Кроме того, поведение…

Пользовательский интерфейс в Qt

QAccessible: основы доступности в Qt-приложениях

Введение Доступность (accessibility, a11y) — обеспечение того, что приложением могут пользоваться люди с ограниченными возможностями: слабовидящие и незрячие пользователи через screen reader, люди с моторными нарушениями через клавиатурную…

Пользовательский интерфейс в Qt

Поддержка screen reader для кастомных виджетов

Введение Стандартные виджеты Qt автоматически интегрированы с системой доступности, но кастомные виджеты, нарисованные через переопределённый paintEvent() (как разбиралось в основном цикле статей про Qt Widgets), не предоставляют никакой…

Пользовательский интерфейс в Qt

Навигация с клавиатуры: фокус, tab order и шорткаты

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

Пользовательский интерфейс в Qt

Доступность в QML/Qt Quick: Accessible attached property

Введение В Qt Quick доступность реализуется иначе, чем в Qt Widgets — вместо отдельного класса QAccessibleInterface, регистрируемого через фабрику, для QML-элементов используется attached property Accessible, которая декларативно прикрепляется…

Пользовательский интерфейс в Qt

Контрастность интерфейса и поддержка тем для слабовидящих пользователей

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

Пользовательский интерфейс в Qt

Озвучивание событий интерфейса через QAccessibleEvent

Введение В статьях 200–201 мы уже касались QAccessible::updateAccessibility() для уведомления об изменении имени и значения элемента — в этой статье разберём более широкий набор событий доступности, доступных через…

Пользовательский интерфейс в Qt

Тестирование доступности приложений: инструменты и чек-листы

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

Пользовательский интерфейс в Qt

Доступность кастомных графических элементов, отрисованных через QPainter

Введение Виджеты, рисующие своё содержимое полностью через QPainter (графики, диаграммы, кастомные индикаторы, canvas-подобные редакторы) представляют особую сложность для доступности — визуальная информация, переданная через цвет, форму, положение элементов…

Пользовательский интерфейс в Qt

Поддержка увеличения текста и масштабирования интерфейса

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