Рубрика «Qt Software» - 18

Тема сегодняшнего эпизода серии вебинаров по QML и Qt Quick — «Списки. Модели и представления».

На этот раз автор вебинара Кирилл Кринкин рассказывает про концепцию Model-View-Controller и посвящает практически весь вебинар работе с моделями и представлениями. Посмотрев видео, вы узнаете, для чего используются статические и динамические модели и как они устроены в Qt Quick, как использовать делегаты, чтобы отображать элементы модели данных в элементах списка или других визуальных контейнерах.

Читать полностью »

Мы с Vass записали и выложили третью серию подкаста «Заметки о Qt».
На этот раз у нас в гостях Gorthauer87
Подкаст «Заметки о Qt» s01e03
Сам подкаст на rpod.ru — qt-notes.rpod.ru/274520.html
Читать полностью »

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

Первая часть вебинара отводится рассказу про невизуальный элемент MouseArea, определяющий участки экрана, в которых события мыши приводят к вызову обработчиков. Ведущий Кирилл Кринкин показывает два способа обработки событий мыши — с помощью связывания свойств (property binding) и с помощью обработчиков сигналов (signal handlers), а также объясняет разницу между этими способами.

Во второй части видео рассказывается про два типа ввода с клавиатуры: текстовый (когда часть специальных клавиш обрабатываются в runtime и события которых до обработчиков не доходят) и «сырой» (когда все клавиши вызывают обработчики). После вводной следует объёмная практическая часть.

Читать полностью »

Мы с Vass записали и выложили вторую серию подкаста «Заметки о Qt».
Подкаст «Заметки о Qt» s01e02
Сам подкаст на rpod.ru — qt-notes.rpod.ru/273862.html
Читать полностью »

Данный эпизод серии вебинаров по QML и QtQuick посвящен базовым средствам по созданию пользовательских интерфейсов.

Кирилл Кринкин, руководитель лаборатории FRUCT Open Source & Linux Lab, расскажет про основные типы графических элементов. Посмотрев видео, вы узнаете, как с помощью QML можно работать с цветами, градиентами, графическими файлами и текстовыми элементами — возможности каждого элемента сперва описываются короткой теоретической частью, после чего демонстрируются на практике.

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

Читать полностью »

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

Предыдущий синтаксис

Вот как мы обычно соединяем сигнал и слот:

connect(sender, SIGNAL(valueChanged(QString,QString)),
        receiver, SLOT(updateValue(QString)) );

На самом деле макросы SIGNAL and SLOT преобразуют свои аргументы в строки. Затем QObject::connect() сравнит эти строки с данными интроспекции собранными утилитой moc.

В чем проблема этого синтаксиса?

Не смотря на то, что в целом все работает хорошо, некоторые неудобства все же есть:
Читать полностью »

Многим хабражителям известен замечательный открытый и бесплатный многопротокольный (ICQ, Jabber, Mail.Ru, IRC, VKontakte) клиент обмена мгновенными сообщениями qutIM. Если сборка этого клиента из исходников под Linux не вызывает особых вопросов, то сборка под Windows окутана завесой тайны. На оффициальном сайте по этому поводу написано очень мало и поэтому я решил рассказать, как это сделать.

Кому интересно, прошу под кат.
Читать полностью »

Привет!

Мы представляем новую серию обучающих постов о QML и QtQuick. На сей раз мы покажем скрикасты с очередных Qt-семинаров Кирилла Кринкина, посвящённых разработке на QtQuick.

Из вступительного вебинара вы узнаете про набор технологий QtQuick. Разумеется, в ролике попутно будет рассказано, что из себя представляет декларативный язык разметки QML, какие у него назначения и особенности, каков его синтаксис.

После всего этого будет описана архитектура приложений на QML и разобрано как написание простейшего «Hello, World!», так и более сложных примеров, иллюстрирующих:

  • как создавать проекты в Qt Creator;
  • что такое связывание свойств и зачем оно используется в языке (кстати, про связывание свойств у нас есть отдельная статья);
  • как использовать мышь.

Читать полностью »

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

Я хочу продемонстрировать и объяснить упрощенную версию существующего кода. Если же захочется посмотреть на рабочий код, просто загляните в исходники Qt. Эта статья поможет понять основную концепцию.

Для того, что бы лучше усвоить статью, надо знать основы программирования без блокировок. Если вам понятна ABA проблема и вы знаете, как сделать стек без блокировок, то проблем не будет. Если же нет, в качестве вступления можно прочитать мою предыдущую статью [перевод].

Основная мысль статьи взята с финальной части моего выступления на Qt Developer days 2011.
Читать полностью »

Мы рады сообщить о выпуске альфа-версии Qt 5 — первого значительного релиза Qt с момента запуска сообщества Qt Project. Команда разработчиков Nokia благодарит всех энтузиастов этого комьюнити, принимающих непосредственное участие в создании Qt 5 Alpha, ведь многие возможности Qt 5 стали доступны именно благодаря их сплоченной работе. Нам очень приятно, что Qt Project стал местом, где люди объединяются, чтобы совместными усилиями развивать любимый фреймворк.

Основной целью альфа-версии Qt 5 является получение фидбека от разработчиков, который поможет улучшить все последующие релизы. В альфа-релизе Qt 5 акцент ставился на предоставлении основных модулей Qt Essentials, формирующих базовый функционал Qt 5. Это кросс-платформенные модули, достаточные для создания большинства приложений.

В виде бинарного пакета Qt 5 Alpha распространяться не будет, но для самостоятельной компиляции доступны исходные файлы. Разумеется, доступна и инструкция по компиляции.

Разработка Qt 5 началась примерно 9 месяцев назад, преследуя несколько основных целей, описанных в мае прошлого года директором по развитию Qt в Nokia Ларсом Ноллом. Ниже будет список этих целей и того, что уже было достигнуто.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js