Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Веселая аркада с Печенькой для новогоднего настроения. Объезжайте препятствия, а подарки, варежки, конфеты и прочие приятности не объезжайте: они помогут набрать очки и установить новый рекорд.

Сноуборд

Спорт, Аркады, На ловкость

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Qt + Программирование

С этим тегом используют

C++ IT Программист IT юмор Разработка Python Картинка с текстом Юмор Все
20 постов сначала свежее
0
NutrientElement
NutrientElement
1 год назад
Arduino & Pi
Серия Программирование

Союз Qt и JavaScript - QML⁠⁠

QML - это язык декларативного описания пользовательского интерфейса, основанный на JavaScript и Qt. Особенность QML заключается в том, что он позволяет создавать динамические, анимированные и интерактивные элементы интерфейса с минимальным кодом.

Союз Qt и JavaScript - QML Разработка, Программирование, Программист, IT, Web-программирование, Linux, Windows, Qt

QML также поддерживает интеграцию с C++ и другими языками, что дает возможность использовать готовые библиотеки и фреймворки.

Некоторые преимущества QML:

  • Быстрая разработка и отладка. QML-код можно изменять во время выполнения, не перезапуская приложение. QML также имеет встроенные средства для отображения ошибок и предупреждений.

  • Кросс-платформенность. QML-приложения могут работать на разных платформах, таких как Windows, Linux, Mac OS, Android, iOS и других, без изменения кода.

  • Гибкость и расширяемость. QML позволяет создавать пользовательские элементы интерфейса, комбинируя стандартные элементы и добавляя свою логику. QML также поддерживает использование ресурсов, таких как изображения, звуки, шрифты и т.д..

  • Высокая производительность. QML использует аппаратное ускорение для отрисовки графики, а также оптимизирует выполнение JavaScript-кода.

Интересные факты и фичи языков программирования у нас в канале, заходи :)

Показать полностью
[моё] Разработка Программирование Программист IT Web-программирование Linux Windows Qt
2
19
NutrientElement
NutrientElement
1 год назад
Arduino & Pi
Серия Программирование

Вышла новая версия Qt Creator 12⁠⁠

Qt Creator 12 - это новая версия интегрированной среды разработки для Qt и C++, которая содержит исправления ошибок и новые функции.

Вышла новая версия Qt Creator 12 Разработка, Программирование, Программист, IT, Qt

Среди самых важных нововведений можно отметить:

  • Интегрированный Compiler Explorer. Введите код, чтобы исследовать, как он выглядит для разных компиляторов.

  • Отладка CMake и протокол Debug Adapter. Установите точки останова в файлах CMake и выберите Отладка > Начать отладку > Начать отладку CMake, чтобы запустить отладчик CMake.

  • Запись экрана. Легко создавайте записи (части) вашего экрана для отчетов об ошибках, обмена, блогов и т.д.

Qt Creator 12 также улучшил производительность запуска, обновил инструменты Clangd и Clang analyzer до LLVM 17.0.1, добавил настройки для имени и комментариев файлов C++, расширил возможности редактора файлов CMake и многое другое.

Интересные факты и фичи языков программирования у нас в канале, заходи :)

Показать полностью
[моё] Разработка Программирование Программист IT Qt
0
1
NutrientElement
NutrientElement
1 год назад
Arduino & Pi
Серия Программирование

Для тех кто все еще не знает, что такое Qt⁠⁠

Qt - это фреймворк для разработки кроссплатформенного программного обеспечения на языке C++.

Для тех кто все еще не знает, что такое Qt IT, Программирование, Программист, Технологии, Linux, Python, Windows, Qt, Разработка

Qt позволяет создавать приложения с графическим интерфейсом, работающие на разных операционных системах, таких как Windows, Linux, macOS, Android и iOS. Qt также поддерживает другие языки программирования, например Python, Ruby, Java и PHP, с помощью специальных библиотек.

Qt состоит из множества модулей, которые предоставляют различные функции, такие как работа с сетью, базами данных, XML, OpenGL, мультимедиа и т.д.. Qt также включает в себя среду разработки Qt Creator, которая упрощает создание и отладку приложений на Qt.

Qt является свободным программным обеспечением, распространяемым под лицензиями LGPL и GPL. Qt используется во многих известных проектах, таких как KDE, Skype, Google Earth, VLC и других. Qt также позволяет писать творческие и инновационные приложения, например, игры, анимации, виртуальную реальность и т.д.

Интересные факты и фичи языков программирования у нас в канале, заходи :)

Показать полностью
[моё] IT Программирование Программист Технологии Linux Python Windows Qt Разработка
8

Продвиньте ваш пост

Перейти
Партнёрский материал Реклама
specials
specials

Нужно больше внимания к постам? Есть способ!⁠⁠

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

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

Продвинуть пост

Продвижение Посты на Пикабу Текст
9
vandeluxe
2 года назад
Лига программистов

Qt или другой фреймворк. Лицензии. Помогите разобраться⁠⁠

Есть задачка по написанию виндового приложения с gui + немного обработки изображений.
Хочу использовать для этого qt, но не могу понять что у него с лицензией:
-Могу ли я его использовать в коммерческой разработке не открывая свои исходники?
-Какие ограничения накладывает бесплатное использование? (Если в 2 словах не объяснить - подскажите место в лицензии, описывающее это)
-Какая вообще сейчас ситуация с qt в России? (трудности со скачиванием и т.п.)
-Хотелось бы использовать актуальную 6 версию - есть ли тут какие ограничения?

И подскажите какие существуют похожие фреймворки с готовыми наборами виджетов, бесплатные для коммерции?
(мне в этом плане ещё понравился lvgl)

[моё] Qt Лицензия Разработка Программирование C++ Текст
21
JamesHarbour
3 года назад

Помогите с выбором в разработке⁠⁠

Друзья, отбрасывая долгие предисловия, искренне верю в отзывчивость и доброжелательность котоламповых юзеров!


Требуется разработать программу для обсчёта статистических параметров и визуализации (графики, гистограммы и др.) на их основе в формате desktop-приложения, возможность выхода в интернет не предусмотрена.


Наградите советом: «на чём» лучше это дело воспроизвести? Выбор пал на Qt Python в виду кросс-платформенности и легкого доступа к обучающим материалам. С программированием знаком, но пока только делаю хоть и долгие, но робкие шаги.


Благодарю за внимание, желаю здоровья и положительной кармы!

Разработка Программирование IT Qt Компьютер Python Обучение Программист Windows Текст
3
31
Terentyeff
Terentyeff
3 года назад
Исследователи космоса

Ответ на пост «А вы знали что у NASA есть API?»⁠⁠2

Прочтя этот пост, решил реализовать нечто подобное для ВК.

Приложение раз в час/два и т.д. (настраивается) постит в Вашу группу в ВК рандомную картинку и описание к ней, используя NASA API.


Дисклеймер: Я не супер программист(но очень хотелось бы), поэтому будет полно говнокода, поэтому, прошу сильно не пинать =).


Для начала, необходимо создать standalone-приложение в VK.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Оно нам понадобится для авторизации в соц.сети и получения Access Token, который позволит работать с VK API.


Мы же с вами программисты, а не (вставить любое слово), поэтому, будем писать всё вручную, а не эти ваши десигнеры использовать.


Данные(VKToken, NASAToken, ID Группы, данные об авторизации, ID группы, пользователя и настройки таймера) будем хранить в ini файле.

Для отображения таймера будем использовать QLCDNumber.


Наш хеадер главного окна получился таким:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

И наш cpp файл. Если файл с настройками не найден, то программа создаст новый и поставит таймер стандартно на час.

В QLCDNumber ставим отображение до 8ми цифр.

И все наши виджеты загоняем в QGridLayout и выводим её.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Получилась вот такая штука:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Ничего сложного, правда?)


Интерфейс для настроек делаем по подобию, но, если что, ссылку на git оставлю в конц статьи.

Теперь, перейдём к самому интересному. API NASA и VK API.

У NASA есть много разного API, но мы будем работать с APOD(Astronomy Picture of the Day).

Для получения данных, необходимо отправить GET запрос на https://api.nasa.gov/planetary/apod?api_key=NASA_TOKEN


Пример: https://api.nasa.gov/planetary/apod?api_key=NASAToken&co...

В ответ мы получим json файл с таким содержимым:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Нам интересны значения: date, explanation, hdurl и copyright(Если фотография не в свободном доступе, то нужно ставить копирайт и NASA нас об этом предупреждает.)

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

А вот и полный список всех параметров, но нам будет интересен только "count"

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Наша ссылка будет выглядеть так:

https://api.nasa.gov/planetary/apod?api_key=NASAToken&co...

NASAToken - Токен, который мы получили от NASA.


Авторизация в ВК и получение токена.

Пример авторизации в официальной документации:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Где client_id - id нашего приложения, scope - необходимые параметры доступа. В нашем случае нужно будет использовать offline, wall, groups. offline нужен для бессрочного token.


Так как ответ приходит немного кривой, требуется сделать немного косметических правок:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Затем, вытаскиваем из ссылки access_token и айди пользователя, сохраняем и переключаем авторизацию в True, затем, закрываем окно.

Пришла пора обработки JSON от NASA и загрузки данных на стену группы.


Сперва, давайте обработаем данные от НАСА.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Теперь, перейдем к загрузке полученных данных в группу. Нам понадобится метод wall.post и параметры owner_id, message, attachments, access_token.

Обратите внимание, идентификатор сообщества в параметре owner_id необходимо указывать со знаком "-" — например, owner_id=-1 соответствует идентификатору сообщества ВКонтакте API (club1)


Итоговая ссылка у нас получается:

https://api.vk.com/method/wall.post?owner_id=-" + GroupID + "&message=" + strk + "&attachments=" + attach + "&access_token=" + VKToken + "&v=5.131

Где GroupID - ай ди группы, который мы сохранили в настройках, strk - строка с копирайтом, датой, описанием, attach - ссылка на фото/видео, VKToken - наш access_token, который мы получили после авторизации.


В общем-то, всё. Мы написали программу, которая будет раз в n-часов постить в нашу группу ВК данные от NASA =).


Ссылка на Github с полным кодом: https://github.com/ac973k/NASAImageVKPost

Ссылка на VK API: https://vk.com/dev/methods

Ссылка на группу: https://vk.com/public200170365


ВК как-то очень криво вставляет изображения, поэтому, в некоторых постах изображение вставляется, а в некоторых ссылка на картинку.

Показать полностью 9
[моё] IT NASA API Разработка Программирование Космос Наука Бот Научпоп ВКонтакте C++ Qt Vkapi Ответ на пост Длиннопост
3
5
BalaganChick
BalaganChick
4 года назад
Программирование на python

Диалоги в PyQt⁠⁠

Мой профиль на GitHub, где будет код этой статьи и предыдущих
Первая статья про PyQt - Как научиться писать на PyQt?
Вторая статья про PyQt - Создаем планировщик на PyQt
Третья статья про PyQt - Текстовый редактор на PyQt

Одна из главных тем в PyQt - это диалоговые окна. В этом посте я вам расскажу как создавать диалоговые окна, как задавать через них вопросы к пользователю, как получать информацию из диалоговых окон.

Пишем базовую разметку для PyQt.

Диалоги в PyQt Qt, Python, Программирование, Длиннопост

Далее создадим кнопку при клике на которую будет вызываться QInputDialog

Диалоги в PyQt Qt, Python, Программирование, Длиннопост

При запуске программы нам высветится кнопка, если мы на неё нажмем, то появится диалоговое окно, где будет QLineEdit и две кнопки ok и cancel. Если после ввода текста мы нажмем на ok, то текст нашей кнопки преобразуется, если же нажмем cancel, то текст останется прежним.

Диалоги в PyQt Qt, Python, Программирование, Длиннопост

Теперь спросим сколько пользователю лет и при неверных данных будем выдавать ошибку с помощью QMessageBox.

Диалоги в PyQt Qt, Python, Программирование, Длиннопост

В этом примере мы берем возраст, делаем проверку, чтобы он был не меньше 5. Если же возраст меньше 5, то мы создаем QMessageBox и выводим его на экран.

Диалоги в PyQt Qt, Python, Программирование, Длиннопост

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

def getDouble (parent, title, label, value, minValue, maxValue, decimals, flags, step)
def getInt (parent, title, label[, value=0[, minValue=-2147483647[, maxValue=2147483647[, step=1[, flags=Qt.WindowFlags()]]]]])
def getItem (parent, title, label, items[, current=0[, editable=true[, flags=Qt.WindowFlags()[, inputMethodHints=Qt.ImhNone]]]])
def getMultiLineText (parent, title, label[, text=””[, flags=Qt.WindowFlags()[, inputMethodHints=Qt.ImhNone]]])
def getText (parent, title, label[, echo=QLineEdit.Normal[, text=””[, flags=Qt.WindowFlags()[, inputMethodHints=Qt.ImhNone]]]])

Сейчас сделаем программу, которая с помощью диалогового окна запрашивает путь к файлу и выводит ошибку, если такого файла нет.

Диалоги в PyQt Qt, Python, Программирование, Длиннопост

Мы открываем файл, если он есть и выводим содержимое в textBrowser. Если же такого файла нет, то мы выводим ошибку.

Диалоги в PyQt Qt, Python, Программирование, Длиннопост
Показать полностью 7
[моё] Qt Python Программирование Длиннопост
3
Партнёрский материал Реклама
specials
specials

Даже получать удовольствие ты должен с коммерческой выгодой для себя ©⁠⁠

Так говорил греческий судовладелец, миллиардер Аристотель Онассис. Миллиардеры, конечно, живут немножко иначе, но этот принцип вполне распространяется и на «простых смертных». Давайте посчитаем, какую выгоду вы получаете.

Посчитать

Бизнес Выгода Текст
16
BalaganChick
BalaganChick
4 года назад
Программирование на python

Текстовый редактор на PyQt⁠⁠

Первая статься про pyqt - Как научиться писать на PyQt?
Вторая статья про pyqt - Создаем планировщик на PyQt
Весь код вы можете посмотреть на моем GitHub

В этой статье мы будем разбираться как работать с файлами, как их открывать, редактировать, сохранять, создавать. Сделаем поле ввода, поле для просмотра текста в файле, сделаем так, чтобы можно было сохранить, создать или открыть файл.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Начнем по традиции с дизайна нашего приложения.

Перетащим Line Edit, Label и Plain Text Edit.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост
Label - текст
Line Edit - строка, в которой можно писать текст ( мы её будем использовать для ввода файла )
Plain Text Edit -  поле для отображения и изменения текста ( мы в нем будем отображать текст файла )

Далее перетащим сетку grid и кнопки.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Затем переместим кнопки в сетку ( это делается перетаскиванием кнопок в красный квадрат ).

После этих манипуляций у нас должно получиться что-то похожее на такое.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Сейчас это выглядит как недоваренная колбаса, но сейчас мы все исправим.

Далее расположите элементы как это будет показано на картинке, найдите centralwidget и сделайте из него сетку.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

После нажатия у вас окно должно выглядеть примерно так.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Чуть-чуть поиграемся со шрифтами ( я использую размер текста 11, а шрифт Segoe Script )

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Если растянуть окно, то будет увеличиваться только Plain Text Edit . Это выглядит не красиво.

Для того, чтобы это исправить найдите свойство sizePolicy и измените значение расположение по вертикале на Expanding

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Я порекомендую также изменить размер текста в Plain Text Edit и Line Edit.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

И наконец сделаем так, чтобы при вводе текста в Line Edit текст форматировался не по левому краю, а по центру. Выделите Line Edit и найдите свойство alignment, измените значение выравнивания по горизонтали на AlignHCenter.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Сохраняем наш проект и переходим к написанию кода. Сначала переведем наш ui файл в python.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Первым делом напишем код для открытие файла.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост
with open(file) as f - дает нам переменную f - это и есть сам файл, мы можем читать файл, изменять его и т.д. В данном контексте мы его читаем при помощи метода read()

При помощи try и except мы ловим исключения.

Напишем функцию для сохранения файла.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост
f.write() - заносим в файл текст, введенный в plainTextEdit

После этого создадим кнопку для создания файла.

Текстовый редактор на PyQt Python, Qt, Приложение, Программирование, Длиннопост

Теперь можете проверять работу приложения.

Весь написанный код можете посмотреть ЗДЕСЬ
Показать полностью 14
[моё] Python Qt Приложение Программирование Длиннопост
2
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии