Top.Mail.Ru

Qt. QML Dialog. Свойства, события и сигналы, кастомизация стиля.

Возвращаемся к курсу по QML и сегодня продолжим рассмотрение основных типов и компонентов. Подошла очередь QML Dialog, собственно, им и займемся. Все по привычной схеме - рассмотрим теоретически-обзорные моменты, по максимуму сопровождая их наглядными практическими примерами, так что переходим к делу. Использовать будем Dialog из QtQuick.Controls 2.15 (не QtQuick.Dialogs 1.3). QML Dialog. Основные свойства и ...

Продолжить чтение

Qt. QML. AnchorChanges, State и PropertyChanges.

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

Продолжить чтение

Qt. QML Anchors. Позиционирование элементов.

Крайне удобным способом позиционирования различных QML компонентов является использование так называемых Anchors. Что в переводе ближе всего к "якорям", но мне русификация такого типа обычно не слишком нравится. Поэтому я, хоть специально на этом не концентрируюсь и внимания не обращаю, тем не менее в тексте на автомате скорее всего буду писать "anchors". Минутка филологии завершена, ...

Продолжить чтение

Qt. QML CheckBox. Кастомизация, свойства, примеры стилей.

Всех приветствую, сегодня продолжим обзор наиболее базовых элементов QML - на очереди стоит CheckBox. И снова большинство вопросов связаны с кастомизацией стиля, поэтому обязательно рассмотрим пару-тройку конкретных вариантов реализации. QML CheckBox. Базовые операции. Начнем по традиции с пустого Qt Quick проекта, в который добавим исключительно то, что будем рассматривать, то есть CheckBox посередине окна 👍 ...

Продолжить чтение

Qt.FramelessWindowHint. Перемещение и изменение размеров окна.

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

Продолжить чтение

QML Button. Добавление иконки к кнопке.

Вдогонку к предыдущей статье, которая была посвящена работе с Button в QML, рассмотрим механизм добавления иконок для этих самых кнопок. И сперва подготовим необходимый файл, я возьму один из вариантов из проекта mtPaint3D. Так вот выглядят кнопки с иконками, утащим отмеченную для сегодняшних тестов: И само изображение: размер - 200*200 формат - .png фон прозрачный ...

Продолжить чтение

Qt. QML Button. События, кастомизация, стили, примеры.

Рад снова всех приветствовать! Как известно, спрос рождает предложение, поэтому я решил опубликовать цикл статей, посвященных различным аспектам QML 👍 Пройдемся более менее масштабно, начиная с основных интерактивных элементов для взаимодействия с пользователем, таких как Button, CheckBox, ComboBox и т. д... И не оставим в стороне также более узконаправленные нюансы. При этом среди вопросов по ...

Продолжить чтение

Qt и QML. mtPaint3D. Создаем утилиту для 3D-рисования. День 9.

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

Продолжить чтение

Qt и QML. mtPaint3D. Создаем утилиту для 3D-рисования. День 8.

Предпоследний, восьмой день, из отведенных девяти на разработку аналога Paint3D. В целом, времени с запасом, можно не спешить 😉 Среди добавленных вчера фигур не хватает одной из наиболее интересных, а именно кривой Безье. Вот восьмой день и надо ознаменовать решением этого вопроса! Мне в данной утилите требуется на данный момент кривая 2-го порядка, то есть ...

Продолжить чтение

Qt и QML. mtPaint3D. Создаем утилиту для 3D-рисования. День 7.

Все доброго времени суток! Так вот планомерно, систематизированно и не сильно перенапрягаясь мы пришли к тому, что для 3D-объекта вида кубоид на данный момент реализована полная поддержка необходимого функционала. Поэтому сегодня по аналогичной схеме добавим остальные объекты. Чуть более подробно рассмотрим на каком-то одном из них, пусть на сфере, например, без разницы. Собственно, уже четко ...

Продолжить чтение