Как стать автором
Обновить

QML — новый подход к построению GUI

Время на прочтение 3 мин
Количество просмотров 11K
Qt *
Традиционно все десктопные приложения пишутся на императивных языках программирования, этот подход прост и понятен, куда проще описать последовательность действий для решения той или иной задачи, нежели поставить задачу в понятной для машины форме, но когда речь заходит о проектировании внешнего вида и поведения, возникают сложности.
Веб дизайнеры же привыкли описывать, как должно выглядеть веб приложение, то есть ставить задачу, а не по пунктам описывать её решение, такой подход называется декларативным, он удобен, но к сожалению в традиционных приложениях до сих пор господствует именно императивный подход. Есть конечно дизайнеры форм, но они лишь позволяют в общих чертах обрисовать внешний вид приложения, но совершенно не способны описать его поведение. Для решения это проблемы в Qt Software был предложен новый проект Declarative User Interface и в рамках него новый язык разметки:

Встречаем QML


Это новый язык разметки, позволяющий описывать не только внешний вид, но и поведение ваших приложений. Он очень прост и обладает json образным синтаксисом, немного сближающим его html5, что думаю очень придется по душе веб-дизайнерам, да и программистам тоже. А в перспективе это наконец позволит полностью разделить внутреннюю логику работы приложения и его внешнее поведение, в результате чего будет наконец решена извечная проблема, когда программист занимается ещё и внешним видом приложения, потому, как дизайнерам слишком сложно было вникнуть в программирование.
Хотите прикоснуться?
Всего голосов 45: ↑37 и ↓8 +29
Комментарии 64

KDE умер, да здравствует KDE

Время на прочтение 2 мин
Количество просмотров 3.7K
Графические оболочки *
Да именно так. Умер K Desktop Environment, теперь KDE не расшифровывается никак и означает не десктопное окружение, а сообщество людей.
Эта новость почему-то прошла мимо (хотя ей уже пара дней).
Скандалы, интриги, расследования
Всего голосов 64: ↑50 и ↓14 +36
Комментарии 140

Первые шаги с QML

Время на прочтение 6 мин
Количество просмотров 26K
Qt *
QML — это новый язык разметки для создания пользовательских интерфейсов. Его основная задача — обеспечить возможность простого и быстрого создания приложений с красивым, анимированным интерфейсом.
Не так давно вышла публичная версия. Это означает, что API в целом стабилизировался, и версию можно смело тестировать и использовать.
Declarative UI планируется включить в релиз Qt 4.7, а пока можно найти все необходимые файлы и инструкции по установке на ftp троллей.
В данной статье мне хотелось бы показать, как можно использовать С++ объекты (QObject) в qml.

Начнем
Всего голосов 52: ↑46 и ↓6 +40
Комментарии 44

Работаем с моделями в QML

Время на прочтение 9 мин
Количество просмотров 8.6K
Qt *

В продолжении предыдущего поста, хочется рассказать ещё немного о новой технологии от Qt Software и Nokia. Напомню, что QML — это новый язык описания пользовательского интерфейса, призванный упростить разработку современных приложений и наполнить их движением.
В этой статье мне хотелось бы немного рассказать о том, как в QML работает парадигма MVC
Читать дальше →
Всего голосов 47: ↑45 и ↓2 +43
Комментарии 35

Небольшой demo клиент vkontakte на QML

Время на прочтение 1 мин
Количество просмотров 3.5K
Qt *

Недавно я уже рассказывал о новом языке разметки, теперь же мне хотелось бы показать небольшой пример того, что можно с помощью этих инструментов сделать. В качестве демонстрации я решил написать крошечный клиент для популярной в рунете сети vkontakte.
Данный клиент взаимодействует с контактом через userapi, умеет отображать список пользователей, принимать и отправлять сообщения, отображать пользователей, от которых есть непрочитанные сообщения, а также искать нужных людей среди френдленты по имени и фамилии: в общем самый минимум, хотя делает он это весьма красиво.
Примечателен клиент тем, что здесь нет ни единой строчки на C++, всё сделано средствами qml и javascript.
Несколько скриншотов и ссылки для скачивания
Всего голосов 123: ↑88 и ↓35 +53
Комментарии 157

Qt 4.7.0 Released

Время на прочтение 1 мин
Количество просмотров 855
Qt *
Из основных изменений:
  • Qt Quick — пока что только сам язык разметки QML и QtDeclarative модуль, тулзы для создания интерфейсов на QML будут выпущены с релизом Qt Creator 2.1 (снепшоты уже доступны
  • Улучшенная производительность и качество
  • Обновления по фичам и производительности в Qt Webkit Integration
  • Обновился VS Add-In, добавлена поддержка VS2010 (спасибо ulintb)

Качать
What's new
Более подробный What's new
4.7.0 changelog
Новость на офсайте
Всего голосов 44: ↑42 и ↓2 +40
Комментарии 53

Экспорт QML файлов из Photoshop и GIMP

Время на прочтение 1 мин
Количество просмотров 3.8K
Qt *
Перевод
Создание QML файлов — невероятно веселая задача, но довольно часто проблематично разбить замечательные Photoshop шаблоны, которые прислал вам дизайнер, в полностью готовый интерфейс Qt Quick. Было бы замечательно, если бы мы смогли автоматизировать этот процесс? Я тоже так подумал, и написал пару полезных скриптов. Первый — скрипт для Photoshop. Просто положите его совместно с другими скриптам, и у Вас появится новый пункт в меню «Export QML», с помощью которого можно перебросить сцену в один QML-файл с элементами Text или Image из каждого слоя. Скрипт также можно использовать и для векторной графики, поскольку в Adobe Illustrator есть удобная опция экспорта в Photoshop.

Я сделал небольшое демонстрационное видео, чтобы лучшее продемонстрировать, как это работает на практике:

Читать дальше →
Всего голосов 40: ↑35 и ↓5 +30
Комментарии 6

PyQt4 и QML

Время на прочтение 6 мин
Количество просмотров 12K
Python *
Из песочницы
Совсем недавно, разработчики фреймворка Qt Software, обрадовали нас появлением GUI, альтернативного стандартному, со своим, довольно несложным, языком разметки — QML.
Связкой QML с основной программой является модуль Qt Declarative. Начиная с версии 4.7 — PyQt4 поддерживает этот модуль.
QML значительно проще и гибче основного GUI, помимо того является и языком программирования, так как позволяет писать функции на javascript. В то время как Python довольно простой и гибкий интерпретируемый язык.

далее...
Всего голосов 48: ↑45 и ↓3 +42
Комментарии 16

Мысли по поводу Qt 5

Время на прочтение 6 мин
Количество просмотров 15K
Qt *
Перевод
Qt 4.0 была выпущена в июне 2005 года, почти шесть лет назад. Многое изменилось в индустрии программного обеспечения за эти годы. Тогда разработка приложений шла в основном на настольных системах, сейчас же мобильные устройства, подключенные к сети, становятся все более популярными. Технология пользовательского интерфейса перешла от статических виджетов к плавным сенсорным. Начиная с Qt 4.0, мы выпустили семь минорных версий Qt, следуя потребностям разработчиков и пользователей, например, разработав Qt Quick. С растущей пользовательской базой Qt, растёт потребность во встроенных, мобильных приложениях и UI-разработчиках.

Кроме того, в будущем, чтобы быть ведущим фреймворком для разработчиков в нескольких отраслях, Qt необходимо непрерывно обновляться и развиваться. Qt 4 был эволюцией, поэтому я задумался о том, как могут выглядеть следующие версии Qt с технической точки зрения. Последние годы мы работали над созданием основы для следующей мажорной версии. Я вижу в ней Qt Quick, QML Scenegraph и проект Lighhouse в сочетании с усилением акцента на Qt Webkit как фундамент, который мы планируем использовать для перехода к новому мажорному релизу Qt.

Учитывая, что Qt управляется открыто, я хотел бы поделиться своими размышлениями с сообществом Qt, чтобы начать дискуссии о технической архитектуре Qt 5.
Читать дальше →
Всего голосов 53: ↑50 и ↓3 +47
Комментарии 44

По следам Nokia Developer Days — презентации

Время на прочтение 1 мин
Количество просмотров 4.1K
Блог компании Microsoft Lumia
Привет, Хабр!

Ровно неделю назад мы обещали поделиться с вами презентациями с конференции Nokia Developer Days и продемонстрировать, как работает новый тег на Хабре
<slideshow> ... </slideshow>,
позволяющий выкладывать интерактивные презентации. Мы собрали материалы практически всех докладчиков, самые интересные презентации точно есть. Все они отсортированы согласно программе мероприятия, с которой можно ознакомиться здесь:



Ну а тех, кому интересны сами презентации, приглашаем под хабра-кат:
Смотреть презентации
Всего голосов 25: ↑20 и ↓5 +15
Комментарии 7

Краткий обзор нового смартфона Nokia N9

Время на прочтение 3 мин
Количество просмотров 112K
Блог компании Microsoft Lumia
Привет, Хабр!

В 7 утра по московскому времени на мероприятии Nokia Connection 2011, проходящем в Сингапуре, мы анонсировали новинку — Nokia N9, смартфон на операционной системе MeeGo.
Сегодня мы постараемся рассказать о нем вкратце. И, для начала, предлагаем посмотреть вот это видео:


Читать дальше →
Всего голосов 104: ↑89 и ↓15 +74
Комментарии 507

Qt для Android (Necessitas Framework) – действительно ли это работает?

Время на прочтение 3 мин
Количество просмотров 28K
Разработка мобильных приложений *
Этот пост участвует в конкурсе «Умные телефоны за умные посты».

Так получилось, что у меня есть кое-какой опыт разработки приложений под Qt, а недавно появился коммуникатор на Android. Узнав о том, что существует проект Necessitas (раньше он называвался Android-Lighthouse), захотелось проверить возможность запуска Qt приложений под Android на практике.



Читать дальше →
Всего голосов 63: ↑44 и ↓19 +25
Комментарии 32

Релиз Qt Creator 2.3.0

Время на прочтение 1 мин
Количество просмотров 1.4K
Qt *
Перевод
image
Мы рады сообщить сегодня о выпуске нового релизе Qt Creator 2.3.0. Релиз включает множество как мелких, так и крупных улучшений для разработчиков. Так как вы, возможно, не следили за пререлизами, повторю некоторые из наиболее важных изменений:
Читать дальше →
Всего голосов 36: ↑33 и ↓3 +30
Комментарии 11

Просто о Qt. Библиотека контейнеров

Время на прочтение 7 мин
Количество просмотров 145K
Qt *
Туториал
Из песочницы
Привет, хабр!

Сегодня я хотел бы рассказать о интересной и полезной фиче. Имя ее — Библиотека контейнеров. Это не одна, а целая группа полезных фич. А их назначение — организация и обработка групп элементов. Звучит интересно, да? Сейчас рассмотрим поближе — добро пожаловать под кат.
Читать дальше →
Всего голосов 38: ↑29 и ↓9 +20
Комментарии 45

Создание YouTube-плеера для Nokia N9 на QML

Время на прочтение 14 мин
Количество просмотров 1.9K
Qt *
Из песочницы
В процессе изучения YouTube API возникла идея написать YouTube плеер для Nokia N9. При выборе средства реализации выбор пал на набирающий обороты QML. Т.к. QML очень легко интегрируется с JavaScript, то получать фиды YouTube было решено именно в JSON (JavaScript Object Notation) формате. При создании пользовательского интерфейса на QML за основу был взят пример Flickr Mobile из QtSDK. Загруженный из фида список предоставляется пользователю в виде ListView или GridView и при щелке пользователя на выбранном видео оно открывается в установленном по умолчанию видео-плеере.

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

Читать дальше →
Всего голосов 17: ↑16 и ↓1 +15
Комментарии 9

Введение в Qt Quick3D

Время на прочтение 6 мин
Количество просмотров 32K
Qt *
Туториал
Этот пост участвует в конкурсе „Умные телефоны за умные посты“
Не так давно фреймворк Qt Quick обзавелся дополнением Qt Quick3D, позволяющим полноценно работать с 3D объектами (поддерживается импорт из 3D Max и Blender), совершать над ними различные трансформации, анимации, применять эффекты, ну и вообще по полной использовать возможности лежащего в основе OpenGL. Работает всё это под Symbian, MeeGo, Windows\Linux\MacOs (ну и вообще везде, где Qt есть). В этом топике мы попробуем технологию «на зуб». Писать что-то сложное и серьёзное не хочется, поэтому мы сделаем хабрахолодильник, из которого по клику будет вылетать НЛО.
Сразу результат:

Читать дальше →
Всего голосов 75: ↑66 и ↓9 +57
Комментарии 58

Qt Quick: лучшие приёмы

Время на прочтение 1 мин
Количество просмотров 11K
Блог компании Microsoft Lumia
Доброе утро, Хабр!

Мы начинаем вести новую серию постов в блоге, посвящённую лучшим трюкам и приёмам в фреймворке Qt Quick, концентрируя внимание на языке QML. Весь цикл постов пишет Майкл Хассельман. Он работает в Openismus и известен разработкой виртуальной клавиатуры для Nokia N9 (MeeGo Harmattan 1.2).

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

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

Серия постов начнётся на следующей неделе с изучения связывания свойств и демонстрации гибкости и мощности языка. Последующие записи этой серии будут публиковаться в этом же блоге с периодичностью раз в неделю. Посты другого плана, разумеется, никуда не денутся.
Всего голосов 32: ↑28 и ↓4 +24
Комментарии 6

Как легко творить прекрасное

Время на прочтение 2 мин
Количество просмотров 4.1K
Разработка мобильных приложений *
Топик участвует в конкурсе «Умные телефоны за умные посты».

Давно я хотел посмотреть на QtQuick и QML, а тут вот и повод. Планировал начать классически — с Hello World, но Qt Creator при создании нового проекта генерит как раз таки Hello World, так что героически его написать самому уже не получится. Ну что ж, тогда замахнемся на что-то побольше. Напишем такую программку, которая бы при запуске показывала что-то случайное, но красивое и вдохновляющее, а по клику в любом месте закрывалась. Мне вот нравятся картинки природы. Что меня тронуло до глубины души, так это тот факт, что данную программу в незнакомой IDE и на фактически незнакомом языке я написал где-то за 500 секунд, 400 из которых разбирался в Qt Creator и читал один короткий туториал.



Читать дальше →
Всего голосов 58: ↑38 и ↓20 +18
Комментарии 24

Потыкай палочкой свой мозг

Время на прочтение 4 мин
Количество просмотров 1.7K
Разработка мобильных приложений *
Этот пост участвует в конкурсе „Умные телефоны за умные посты

imageЧем обычно мы занимаемся сидя в автобусе/метро/очереди? Правильно — фигнёй. Обычно это или музыка или глупые игры на мобилке вроде «Попробуй найди такой же шарик, как и я, скотина!».

С музыкой понятно, она везде едина, а вот с игрушками что-то можно изменить… К примеру — сделать нечто простое, но с намёком на интеллектуальность и полезность. Суть идеи проста, как две копейки — берём слово, мешаем в нём буквы и предлагаем игроку угадать изначальное словечко по рандомной каше. Навешиваем на это красивый дизайн и плавные переходы, прикручиваем уровни и рейтинги — вуаля, игра готова!
Читать дальше →
Всего голосов 50: ↑23 и ↓27 -4
Комментарии 15

Реализуем мечту об идеальном плеере с Qt Quick на перевес!

Время на прочтение 4 мин
Количество просмотров 3.9K
Разработка мобильных приложений *

Предыстория


Все мы любим послушать музыку. Все мы для этого пользуемся устройствами/приложениями для её прослушивания. У кого-то это Winamp или стандартный медиа-плеер Windows, а у кого-то плеер на мобильном телефоне или вовсе отдельный mp3-шник.
Читать дальше →
Всего голосов 21: ↑8 и ↓13 -5
Комментарии 13