Обновить
5.21

Qt *

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

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

Qt. Создание виджета-консоли для графического приложения

Время на прочтение5 мин
Количество просмотров25K
Привет добрым людям.
При прочтении этого заголовка читатели могут подумать: зачем смешивать консольные и графические приложения – консоль в GUI-приложении не нужна. А вот и нет, смею заметить. Иногда совмещение функциональной консоли с полным набором команд и графического отображения для удобной навигации и просмотра данных может дать в итоге мощный инструмент.
И у меня есть пример.
Начав использовать быстрое key-value хранилище данных Redis для своих проектов, я обнаружил, что на данный момент нет ни одного вменяемого desktop-приложения для просмотра, редактирования и администрирования баз данных Redis. Есть только консоль от разработчиков, веб-интерфейс Redis Admin UI, который для своей работы требует .NET (что само по себе уже отпугивает) и пару Ruby-приложений, сделанных, похоже, на скорую руку, на коленке.
Хотелось бы иметь что-то удобное и быстрое, как сама база данных Redis. Поэтому я решил восполнить этот пробел и написать такой инструмент. Так как нужен быстрый – то C++, так как нужен кроссплатформенный – то Qt.

RedisConsole

Из-за того, что все возможности базы данных не реализуешь, да они и могут появляться каждый день новые, нужно было добавить в графический интерфейс консоль. На основе какого виджета в Qt ее имитировать, и как, и хочу вам рассказать.

Читать дальше →

Создание гибридного Qt Quick и C++ приложения

Время на прочтение6 мин
Количество просмотров31K
Добрый день, %username%!

Небольшая предыстория:

Некоторое время назад делал знакомому лабораторную, тематика которой – код Хэмминга. Программа представляла собой обыкновенное Qt приложение с минимальным набором контролов. Сдача прошла успешно, прошло некоторое время, и его теперь другу необходимо тоже сдать лабораторную на эту же тематику. Ту же программу, очевидно, сдавать нельзя. Тут возникает вопрос – как сделать программу с тремя кнопками и двумя текстбоксами непохожей на предыдущую? Мне в голову пришла мысль переписать интерфейс с помощью Qt Quick, а логику и расчеты программы оставить в С++, а заодно и рассказать интересующимся людям, как я обычно делаю подобные вещи. По Qt Quick не так много литературы, тем более на русском, так что очень надеюсь, что данная статья будет полезна и интересна.
Читать дальше →

Будь чёток! Будь смел! Будь всегда при семках!

Время на прочтение4 мин
Количество просмотров3.3K
Будь мужиком бл...! =)

Но на самом деле, мне бы хотелось поговорить о том какая это «тяжкая» работа писать мобильные приложения на Qt… Разберём простой пример.
Читать дальше →

Виртуальная клавиатура, или новые функции контекста ввода Qt

Время на прочтение1 мин
Количество просмотров4.2K
Привет. Хочу поделиться ссылкой на одну статейку, тема на русском языке нигде не освещена, да и на английском есть только один пример из состава Qt, но тем не менее думаю многим было бы интересно почитать нечто полезное по сабжу. Фишка в том, что описываемый метод создания виртуальной клавиатуры не использует самописные костыли для определения попадания курсора в какое либо из полей ввода и отработки необходимости показывать/скрывать виртуальную клаву, а пользует новый API контектсов ввода Qt, созданный давным давно и расширенный в версии 4.6 некоторыми плюшками… В общем смотрим, ругаемся, комментируем =)

qt.e-werest.org/blog/tutorial/2939.html

К сожалению:
1) Не могу опубликовать просто пост-ссылку, ибо чуток кармы не хватает.
2) Делать перепост по правилам не желательно, да и подсветить нормально код в хабравском редакторе та ещё задачка.

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

Время на прочтение6 мин
Количество просмотров15K
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.
Читать дальше →

Релиз Qt Creator 2.2

Время на прочтение1 мин
Количество просмотров1.6K
imageСегодня в блоге Qt Labs было сообщено о выходе нового релиза среды разработки Qt Creator.

Краткий список изменений:
  • Обновлена поддержка Bazaar
  • Полностью переписана система отладки для MSVS
  • Конфигурируемые определения MIME типов
  • Запись и воспроизведение макросов
  • Конфигурируемые сниппеты
  • Доступ к внешним инструментам (например, lupdate и lrelease)
  • Закрепляющиеся всплывающие подсказки отладчика
  • Поддержка Valgrind/memcheck (Отладка->Анализатор) на Linux и Mac
  • Специализированный редактор для языка шейдеров GL

Читать дальше →

Релиз Qt SDK 1.1

Время на прочтение2 мин
Количество просмотров1.8K
Сегодня мы объявляем о выпуске Qt SDK 1.1. Это был длинный путь к релизу, который многие из вас ждали. Если не вдаваться в подробности, вот ссылки для скачивания:
Читать дальше →

Qt 4.7.3, Qt Mobility 1.1.1, Qt VS Addin 1.1.9

Время на прочтение1 мин
Количество просмотров2.3K
Новое обновление Qt framework, которое в основном включает обновления для Qt for Symbian, а также важные исправления для Qt и Qt Mobillity согласно багтрекеру. Скачок версии Qt mobility от 1.1.1 до 1.1.3 объясняется тем, что были найдены серьезные ошибки в SDK и релиз был перенесен сразу на версию 1.1.1.
Читать дальше →

Разработка плагинов к qutIM'у из под Windows — быстрый старт

Время на прочтение4 мин
Количество просмотров1.3K
Традиционным способом начала разработки было выкачивание всех исходников и их компиляция, и даже из беглого сравнения размера инструкции для Windows и Ubuntu видно, что эта задача очень даже непростая. К счастью, появился способ проще и быстрее.
Читать дальше →

Рисуем виджеты в заголовке окна

Время на прочтение3 мин
Количество просмотров12K
Ни для кого не секрет, сегодня у населения в основном преобладают широкоформатные мониторы и они вынуждены экономить количество пикселей по вертикали. Это породило моду на рисование элементов управления прямо в заголовке окна. Сейчас этим уже никого не удивишь, но, тем не менее, нигде ещё не находил решения этой проблемы на Qt, поэтому сейчас мы будем это исправлять:

Читать дальше →

Выпущена бета Qt Creator 2.2

Время на прочтение1 мин
Количество просмотров871
Сегодня в блоге Qt Labs было сообщено о выходе первой бета-версии IDE Qt Creator 2.2. Релиз был назван в честь умершего белого медведя Кнута (Knut Creator). Помимо множества багфиксов в бету было добавлено несколько серьезных улучшений, в частности поддержка системы управления версиями Bazaar, сниппеты кода, улучшенный дебаггер.
Читать дальше →

Qt: работа с Vkontakte API и Phonon

Время на прочтение12 мин
Количество просмотров20K
Qt
Статья описывает взаимодействие Qt c такими программными интерфейсами как Vkontakte API и Phonon, в реальных примерах и подробным описанием.
В конце статьи ссылка на репозиторий с исходным кодом который Вы можите свободно скачать и запустить.
Читать дальше →

Представляю доказательства возможности портировать Qt Lighthouse на iOS (UIKit)

Время на прочтение3 мин
Количество просмотров8.4K
Я закончил реализацию тестового порта Lighthouse плагина, котрый работает «поверх» UIKit (исходный код доступен в репозиротии qt-lighthouse на гиториоусе). Пока не настолько впечатляющий, как порт под Android (но может быть немножечко более впечатляюще, чем порт под новую пратформу INTEGRITY, по крайней мере для меня).
image
Что все это значит ?

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

Digia будет заниматься коммерческим лицензированием и платной поддержкой Qt вместо Nokia

Время на прочтение1 мин
Количество просмотров1.5K
Об этом Nokia сообщила сегодня в блоге: Nokia and Digia working together to grow the Qt community

Nokia будет продолжать инвестировать в развитие Qt, как коммерческого так и (L)GPL.

Пресс-релиз Digia.

Digia — финская компания, Training и Consulting партнёр Nokia. Занимается как разработкой приложений на Qt и Qt-виджетов, так и адаптацией Qt к новым ОС. Предоставляет также тренинги по Qt для различных платформ, включая Symbian.

PS: Уместнее был бы топик-ссылка, но в нём запрещён хтмл почему-то, и не вставить вторую ссылку.

Финальный релиз PySide 1.0.0

Время на прочтение1 мин
Количество просмотров2.3K
PySideВ блоге Qt появилась новость о релизе PySide 1.0.0 с множественными багфиксами и поддержкой всех вкусностей Qt 4.7 (Qt Quick, QML), а также Qt Mobility.
Также сообщается, что запланированна поддержка Python 3k и более Pythonic API )
Читать дальше →

Qt Mobility 1.1.1, QtCreator 2.1.0, Qt 4.7.2

Время на прочтение1 мин
Количество просмотров1.6K
Вышло очередное обновление инстурментария Qt за номером 4.7.2. Кроме исправления ошибок, оно является официальным релизом Qt Quick.

Одновременно вышло обновление для QtCreator (версия 2.1.0) с расширенной поддержкой Qt Quick и разработки для мобильных приложений.

QtMobility 1.1.1 включает множество исправлений ошибок и улучшенные привязки для QML и производительность, в особенности для Symbian.
Qt Mobility 1.1.1 так же входит в состав Qt SDK 1.1 Beta.

Idle Event в Qt

Время на прочтение3 мин
Количество просмотров5.8K
Привет, хабралюди!

Встпуление


Не так давно я стал работать с Qt под Windows. Моей задачей является разработка графического приложения с отрисовкой пользовательского интерфейса в реальном времени с анимацией и прочими плюшками. Работает вся эта красота через DirectX, а Qt очень помогает анимацией, окнами, сигналами и прочими полезными вещами.

Зачем это надо?


Если кто занимался разработкой игр, то знает, что перерисовка экрана происходит во время «простоя приложения» — т.е. те моменты, когда очередь сообщений к окну пустая. Это позволяет перерисовывать окно довольно быстро, так в частности пустое окно, может отрисовываться несколько тысяч фреймов в секунду(с отключенной вертикальной синхронизацией).
Читать дальше →

Анонимный браузер своими руками или Hide your ass yourself

Время на прочтение4 мин
Количество просмотров14K
Вступление

Этот небольшой топик расскажет о том, как просто и быстро сделать свой браузер, с небольшими добавками, которые помогут нам остаться анонимным в сети. Всю черную работу за нас сделает Qt, а именно его модуль QtWebKit. Мы лишь добавим в нужные места строки, подменяющие http-заголовки наших http- запросов. Это позволит оставаться анонимными при пассивном анализе http-запросов. Также переопределим navigator, что позволить оставаться анонимными для javascript-ов при активной идентификации. Для определенности обозначим основные параметры, с помощью которых нас можно идентифицировать в сети – вот именно их мы и будем подменять. Первое – это конечно IP адрес, тут все просто – используем прокси. Второе – любые заголовки http-запроса (user-agent будет наиболее интересен: его значение нужно подменять как в заголовках http-запросов, так и в проверке javascript-ами). Также реализуем возможность редактировать и подставлять свои сookies для определенных сайтов, раз уж есть такая возможность. И дополним все это встроенным редактором для подменяемых параметров с возможностью их сохранения для последующего использования.
Читать дальше →

Основы исполнения JavaScript и взаимодействие с сайтами внутри программ на Qt

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

Введение


О кроссплатформенной библиотеке Qt слышали, наверное, многие. О движке отображения веб-страниц WebKit тем более. Не так давно первое стало содержать обертку над вторым, примеры создания браузеров в 50 строчек найти не сложно. Тем не менее о том, как получать доступ к отдельным элементам веб-страницы из Qt-кода написано не много.
Читать дальше →

Нативные интерфейсы в Qt

Время на прочтение11 мин
Количество просмотров67K
Qt Logo

Эта статья посвящена программированию GUI на базе фреймворка Qt от Nokia. Мы рассмотрим способы разработки интерфейсов для нативного отображения на платформах Windows, Linux и Mac OS X.

Презентацию[1] вёл Йенс Бач-Вииг (Jens Bache-Wiig) — разработчик Qt (с 2005 года), занимающийся интерфейсами (look and feel).

От переводчика: далее, поскольку это слайд-шоу, по мере возможностей буду давать пояснения к слайдам. Какие то, на мой взгляд менее важные моменты будут опускаться, что-то будет рассмотрено более подробно.

Итак, приступим. Каждое графическое окружение имеет свой свод правил (User Interface Guidelines, UIG) по созданию интерфейсов, предназначенных для этих окружений. Из основных можно отметить такие руководства как Windows User Experience Interaction Guideline, Apple Human Interface Guideline, KDE User Interface Guideline и GNOME HID. Каждое из этих руководств «определяет положение кнопочек и рюшечек» конкретного окружения. Фреймворк Qt, в свою очередь, осуществляет поддержку всех этих руководств, предоставляя разработчику возможность создавать программы с использованием виджетов, «подстраивающихся» под окружение.

Читать дальше →

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