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

Qt *

Кроссплатформенный инструментарий разработки ПО

Сначала показывать
Порог рейтинга
Уровень сложности

PyQt4: проблемы со сборкой QtHelp

Время на прочтение4 мин
Количество просмотров4K
Началось всё с того, что я захотел установить Python3 и Eric5 на свою Kubuntu 12.04. Так как в репозиториях «Панголина» присутствует только Eric4, то было решено ставить всё руками из исходников. По сути, в такой установке нет ничего сложного: ставлю Python3, затем SIP, далее PyQt4, потом QScintilla2. На первый взгляд всё прошло гладко. Я спешно перехожу в каталог с дистрибутивом (не побоюсь этого слова) Eric5 и набираю заветные

sudo python3 install.py

Каково же было моё удивление, когда скрипт выдал в консоли

Found PyQt4
Sorry, please install QtHelp.
Error: No module named QtHelp

Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии1

Подкаст «Заметки о Qt» s01e05

Время на прочтение1 мин
Количество просмотров2K
Мы с Vass записали и выложили пятую серию подкаста «Заметки о Qt».

Сам подкаст на rpod.ru — qt-notes.rpod.ru/276973.html
Читать дальше →
Всего голосов 27: ↑18 и ↓9+9
Комментарии2

Слушаем музыку из Vkontakte через Амарок — V.2.0

Время на прочтение2 мин
Количество просмотров15K
Всем привет! Не писал статей более двух лет и вот, наконец-то, появилось свободное время. Вы, наверное, не помните мой топик 2-х летней давности — Слушаем музыку из Vkontakte через Амарок. Напомню суть — тогда я написал плагин для KDE-шного Amarok`a, который позволял искать и слушать музыку из Вконтакте. Если вам все еще интересно, прошу под кат(осторожно — картинки!).
Читать дальше →
Всего голосов 72: ↑59 и ↓13+46
Комментарии55

Вебинары по QML и QtQuick: состояния и переходы

Время на прочтение1 мин
Количество просмотров5.3K
После небольшого перерыва мы вновь продолжаем серию вебинаров по QML и QtQuick, и на этот раз поговорим про состояния и переходы — один из важнейших моментов в построении пользовательских интерфейсов на QML.

Декларативный стиль языка QML направлен на то, чтобы избежать ошибок при построении интерфейса пользователя, которые вызываются некорректным переходом из одного состояния в другое. Для этого в QML есть встроенная поддержка для определения декларации состояний и переходов между ними, и машина состояний (state-machine), которая умеет эти переходы корректно осуществлять. Таким образом QML нам даёт формальную спецификацию интерфейса, надёжный способ организации логики приложения, гарантию покрытия всей функциональности и возможность связки переходов между состояниями с анимацией.

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

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

Истории

QScintilla: все глубже и глубже

Время на прочтение2 мин
Количество просмотров4.9K
Добрый день!

Чуть не забыл. Первая и вторая статья цикла.

Это опять я, со своей новой статьей. Сегодня я расскажу вам, как работать с qscintilla почти на полную мощь. А конкретнее: покажу почему полезно наследовать QsciScintilla своим классом, нежели использовать его копию и расскажу как писать какой-никакой автокомплит кода для своего редактора.

Сразу скажу, статья будет небольшая, а как работать со всем этим хламом я покажу на примере моего пока слабо развивающегося проекта Web Development IDE Galactica.
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Комментарии0

Темная сторона QScintilla

Время на прочтение4 мин
Количество просмотров8.7K
Недавно на Хабре начали появляться статьи (1, 2) про замечательный компонент QScintilla.
Я один из разработчиков проекта Monkey Studio, и, последние полтора года, mksv3. Мы пользуемся QScintilla уже 5 лет. Периодически делаем для него баг репорты и патчи. Мы решили от него отказаться. И нам мучительно больно за потраченные на него годы.
Пишу этот пост, чтобы у других не случилось так же.
Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии28

Qt/Objective-C++11 или сборка Qt-проекта с помощью GCC-4.7 и Clang

Время на прочтение6 мин
Количество просмотров12K
Всем доброго хабрадня!

Сегодня я расскажу уважаемым хабражителям об очередном извращении — о сборке проекта, написанного на Qt, под Mac OS X компилятором GCC-4.7.0 с примесью Clang'а (про шланг — в конце статьи, там станет понятно, зачем ещё и его приплетать будем).

Для чего нам GCC 4.7? Ну, например, чтобы использовать все те крутые фичи из стандарта C++11. Разве этого мало? Кроме поддержки нового стандарта, в нём очень много улучшений по сравнению с идущим в комплекте с Xcode GCC 4.2 (хотя он и оказывается на поверку i686-apple-darwin11-llvm-g++-4.2), так что смысл в переходе на 4.7 явно имеется. Но и проблемы присутствуют, о чём ниже.

Мы можем предположить, что нам потребуются некие фичи из Cocoa, а значит, нам потребуется компилятор Objcetive-C, а ещё лучше — Objective-C++, чтобы, например, интегрировать наше Qt-приложение в окружение Mac OS X.
Начнем!
Всего голосов 41: ↑34 и ↓7+27
Комментарии66

QScintilla: пишем свой лексер

Время на прочтение4 мин
Количество просмотров6.3K
Привет, хабр!

UPD: третья часть цикла.

Это вторая статья цикла про QScintilla. Первая здесь. Для начала хочу сказать огромное спасибо всем, кто вывел меня из кармоямы! А теперь можно начать. Что мы сегодня будем делать? Мы напишем лексер для Assembler'а! «В коробке» его нету — не беда, напишем сами! Процесс довольно длительный, поэтому я буду немного меньше расписывать и комментировать. Тем более я не знаю язык ассемблера, так что лексер будет до ужаса примитивный и будет разрисовывать только команды и комментарии.

Как сказал Гагарин — «Поехали!»
Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии19

QScintilla: подсвечиваем синтаксис в приложении

Время на прочтение3 мин
Количество просмотров11K
Привет, $username!

UPD: вторая и третья часть цикла о QScintilla.

Сегодня я хочу рассказать вам про отличный проект — QScintilla, который подсвечивает синтаксис кода в Qt-приложениях. Нередко возникает необходимось что-то подсвечивать. Например: C++, Bash, PHP, Diff… Этот список можно продолжать и продолжать. Но вот решение: порт Scintilla на Qt: QScintilla.

В этом посте я расскажу как установить и пользоваться QScintilla в своих приложениях на примере Ubuntu Linux.
Читать дальше →
Всего голосов 41: ↑39 и ↓2+37
Комментарии28

Qt Build System: спасательный круг для сборки

Время на прочтение10 мин
Количество просмотров47K

Примечание(17.06.2013): синтаксис примеров в статье не соответствует последним версиям. Сверяйтесь с документацией. Также в марте был выпущен Qt Creator 2.7 с поддержкой QBS.
Не так давно команда разработчиков Qt представила новую систему сборки — QBS. Разумеется, основной реакцией было «Да чем вас QMAKE не устраивал», «Просто адаптируйте CMAKE», «Ещё одна система сборки [xkcd, стандарты]». Обещанные преимущества новой системы: гибкость, понятный синтаксис для всех разработчиков (QML — javascript-подобный декларативный язык), скорость билдов (чистых и инкрементальных), а также лёгкая расширяемость.
Всё это мы где-то уже слышали, поэтому в данной статье мы попытаемся разобраться, как разработчики пришли к этой системе, рассмотрим простейшие примеры, изучим основные конструкции и посмотрим, какая поддержка на уровне IDE присутствует на настоящий момент.
Let's go!
Всего голосов 47: ↑47 и ↓0+47
Комментарии49

Подкаст «Заметки о Qt» s01e04

Время на прочтение1 мин
Количество просмотров1.4K
Мы с Vass записали и выложили четвертую серию подкаста «Заметки о Qt».

Сам подкаст на rpod.ru — qt-notes.rpod.ru/275603.html
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии8

Доработка плагина TODO для QtCreator 2.5.0

Время на прочтение4 мин
Количество просмотров1.7K
Буквально на днях вышел QtCreator 2.5.0, и в нем появился плагин TODO. Но этот плагин поддерживает комментарии вида: <KEYWORD>: <some text>, а я везде использую doxygen комментарии: @<KEYWORD> <SOME_TEXT>. Поэтому я решил доработать плагин, так чтобы он мог поддерживать комментарии обоих видов.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии10

Qt Creator 2.5.0 вышел в свет!

Время на прочтение1 мин
Количество просмотров5.9K
Состоялся релиз нового Qt Creator'а, находившегося до того в бете и RC.

Список изменений и нововведений:

  • Быстрый повторный поиск с кнопкой «Search Again»
  • Запуск shell-команд прямо из локатора
  • Плагин TODO, о котором уже писал на Хабре уважаемый Vass, коему в официальной новости выражена благодарность
  • Плагин для работы с autotools
  • Дополнительные возможности рефакторинга в C++: извлечь метод, добавить нехватающий #include, переставить аргументы функции местами
  • Улучшена поддержка C++11 (nullptr, constexpr, static_assert, noexcept, inline namespaces, auto, lambdas)
  • Новые хинты и ворнинги в редакторе QML (и возможность их отключать особыми комментариями)
  • Исправлены многочисленные баги
  • В версии под Windows из установочного пакеты убрали MinGW



Ссылки на новость, changelog и скачивание под катом
Всего голосов 42: ↑39 и ↓3+36
Комментарии39

Ближайшие события

Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
OTUS CONF: GameDev
Дата30 мая
Время19:00 – 20:30
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Отечественные Qt-проекты

Время на прочтение5 мин
Количество просмотров15K
Как известно, с использованием фреймворка Qt написано немало программ, причём отечественных среди них в последнее время становится всё больше. Итак, что же было написано в России с использованием этого фреймворка?

Kaspersky Internet Security
Kaspersky Internet Security 2012 – решение для обеспечения оптимального уровня безопасности. Инновационная гибридная защита мгновенно устраняет вредоносные программы, спам и другие интернет-угрозы, экономя ресурсы компьютера за счет комбинации облачных и антивирусных технологий.
В папке программы обнаружил следующие модули: qtcore, qtdeclarative, qtgui, qtnetwork, qtscript, qtsql, qtwebkit.

2ГИС для iOS и Android
2ГИС – бесплатный электронный справочник организаций с картой города. 11 550 000 пользователей ПК в более чем 150 городах России и Украины регулярно используют 2ГИС в личных целях и для решения бизнес-задач.
Пруфлинк: «Оффлайновая версия 2ГИС разработана с использованием фреймворка Qt 4.8 и имеет нативный интерфейс, созданный в соответствии с Apple Human Interface Guidelines».
Читать дальше →
Всего голосов 75: ↑67 и ↓8+59
Комментарии49

QML Live Preview — мечта UI-дизайнеров

Время на прочтение1 мин
Количество просмотров4K
Немногие знают, что в последних версиях QtCreator'а есть поддержка QML Live Preview — возможности править код и сразу же видеть изменения на уже запущенной программе, причем как на десктопе/эмуляторе, так и на реальном устройстве.
Дико удобная вещь, позволяет экономить тонну времени на этапе разработки/правки UI.

Всё это, вместе с другими плюшками для дебаггинга QML работает из коробки на версиях QtCreator > 2.3. Для Qt версии 4.8 отладка QML включена по-умолчанию, для 4.7 необходимы легкие телодвижения в виде нажатия на одну кнопочку.

Небольшая демонстрация того, как это работает на примере Nokia N950:


Под катом ещё одно симпатичное видео.
Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии7

Вебинары по QML и QtQuick: Списки. Модели и представления

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

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

Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии2

Подкаст «Заметки о Qt» s01e03

Время на прочтение1 мин
Количество просмотров1.5K
Мы с Vass записали и выложили третью серию подкаста «Заметки о Qt».
На этот раз у нас в гостях Gorthauer87

Сам подкаст на rpod.ru — qt-notes.rpod.ru/274520.html
Читать дальше →
Всего голосов 36: ↑29 и ↓7+22
Комментарии22

Вебинары по QML и QtQuick: взаимодействие с пользователем

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

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

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

Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии0

Подкаст «Заметки о Qt» s01e02

Время на прочтение1 мин
Количество просмотров1.6K
Мы с Vass записали и выложили вторую серию подкаста «Заметки о Qt».

Сам подкаст на rpod.ru — qt-notes.rpod.ru/273862.html
Читать дальше →
Всего голосов 44: ↑30 и ↓14+16
Комментарии17

Вебинары по QML и QtQuick: создание интерфейса пользователя

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

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

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

Смотрите вебинар под катом
Всего голосов 18: ↑18 и ↓0+18
Комментарии3

Вклад авторов

Работа

QT разработчик
7 вакансий