>>1409559 (OP)У них отличная встроенная документация с примерами, берешь @ изучаешь. Можешь почитать Шлее.
Есть такой фрагмент кода#include <QApplication>#include <QPushButton>int main(int argc, char argv){ QApplication app (argc, argv); QPushButton button; button.setText("My text"); button.setToolTip("A tooltip"); button.show(); return app.exec();}Вроде все просто если я правильно понял. Создается объект button класса QPushButton и вызываются его методы.Но почему тогда здесь используются указатели?#include <QApplication>#include <QPushButton>int main(int argc, char argv){ QApplication app (argc, argv); QWidget window; window.setFixedSize(100, 50); QPushButton *button = new QPushButton("Hello World", &window); button->setGeometry(10, 10, 80, 30); window.show(); return app.exec();}
>>1409559 (OP)Раз уж такой тред, не подскажите? Я так понял, чтобы приложения получались компактными, надо QT статически собрать, чтобы не тащить с собой 100500 dll. Это всегда надо самому его несколько часов компилировать, нет у них готовых сборок? Или чего я не допонял, помогите нюфагу, пожалуйста.
>>1411424Qt пишется совсем по другому, в отличии от обычных крестов. Фактически - это отдельный диалект. Итого - ПОТОМУ-ЧТО ТАК ЗАВЕДЕНО. И еще потому, что в деструкторе mainwindow удалит всех своих детишек, и это будет твой button
Полный даун ОП. В 2к20году 2к25г, пока вкатится, писать что-то на qt на сисиплюсе. Ору с вкатывальщика дебика.
>>1410581а нахуя нужен qt то? бери electron и ваяй модно современно десктоп ui. Заодно и под веб легко портировать.
>>1411553На qml сложно писать большие приложения с кучей таблиц, виджетов, интерактивных элементов, т.к. он задумывался как решение для встраиваемых систем.
>>1411553ну и нахуй нужен твой qml?новые костыли навернутые над старыми костылями которые навернуты над совсем уж старыми костылями.Делаешь одностраничное приложение в каком нибудь ангуляре или реакте, если так уж нужен десктоп - фигачишь в электрон, и вот у тебя уже и веб и десктоп версия.Qt для мобилок на qml таки имело смысл, если бы не было таким ужасным говном во всем проигрывающем нативу и не имеющим преимуществ на тем же жсным реакт-нативом.Ну еще qt могло бы иметь смысл если хочется писать бизнес логику на крестах, но парадигма в qt настолько костыльное говно, что знающий современные стандарты крестов на qt будет писать только под дулом пистолета.В общем пора бы уже qt на свалку истории.
>>1411776>>знающий современные стандарты крестов на qt будет писать только под дулом пистолета.Бред. Qt это набор готовых кирпичиков, из которых можно сваять приложуху, это и сериализация, и свойства, и работа с БД такая, что можно легко сменить СУБД без перепиливания кода, и работа с сетью, кроссплатформенность, многопоточность, json, графика, звук, видео. Или ты предлагаешь свои велосипеды писать кривые?
>>1411989и кому нужен такой язык, в котором чтобы пукнуь нужно построить велосипед? Дебикам вроде тебя?
>>1411776Но электрон это и есть кривой костыль для веб макак, которые не могут в нейтив. Приложение эмулирует работу браузера и поднимает интерпретатор жс чтобы просто рисовать окошки! Серьёзный софт таким инструментом не напишешь, а это единственная прибыльная ниша в десктопе (тудушки и прочий мусор уже давно на компах никто не запускает). То же самое касается и реакт натива.
>>1411980я на джсе в жизни не писал, я сеньор крестоблядь которую недавно заставили попробовать qt и теперь у меня эмоциональная травма от этого лютого говнищща.>>1411989>это и сериализацияой блядь, стримовая сериализация, видел я идиотов что на ней протокол клиентсерверный делали, а потом мужественно превозмогали проблемы версионности и гейзенбаги. Протобаф надо юзать чтобы не быть баттхертом.>свойствамакросоговно на которое больно смотреть в 21 веке>и работа с БД такая, что можно легко сменить СУБД без перепиливания кодаПро odbc слышал? что ты там кстати на клиенте менять собрался, sqlite на sqlite? или у тебя клиент на прямую без сервисной прослойки с удаленной базой работает?>и работа с сетьюЭто адов пиздец, работа с сетью через qt-шные сигналы слоты.Бери boost-asio c boost-future и перестань писать говноспагетти>кроссплатформенностьнигде кроме десктопа qt не нужно, тру-кроссплатформенное десктоп приложение должно в браузере открываться>многопоточностьзавели нахуя то QMutex вместо std::mutex, охуеть многопоточностьв стандарте тем временем уже корутины скоро будут>jsonлучший json:https://github.com/nlohmann/json > графика, звук, видеоhttps://openframeworks.cc/и не надо ебаться с устаревшей концепцией сигналов/слотов, ебучими qt шными макросами и прочим дедушкиным говном
>>1412310>и работа с сетьюОчень легко и удобно на самом деле. Если нужен простенький серверок, который будет обслуживать каждое подключение в отдельном потоке, на Qt это довольно легко делается. Да и вариант обслуживания нескольких подключений в каждом потоке тоже несложно сделать. Но для высоконагруженного сервера, наверное, плохой вариант.>завели нахуя то QMutex вместо std::mutex, охуеть многопоточностьВ Qt я просто беру из без задних мыслей создаю объект класса, закидываю его в поток через moveToThread(), соединяю слоты-сигналы и получаю выполнение всех слотов этого объекта в новом потоке и асинхронно. Это очень просто.А еще есть MapReduce через QtConcurrent.А про мьютекс согласен, он не нужен. Еще контейнеры уже давно не развиваются, использую STL'овские где только возможно. > Протобаф надо юзатьНеоходимо передавать бинарные данные произвольной длины, ебусь с ручной десериализацией. Сможет ли он избавить меня от боли?Вообще использовать Qt там, где не нужно пилить формочки, я бы не стал. Плюс с лицензией у них все сложно.мимо мидл
>>1411424Зачем затем блятьВ первом случае у тебя создастся одна кнопка сама по себе на стэке.Во втором кнопка привязывается к окну.>QPushButton *button = new QPushButton("Hello World", &window);>&window Видишь эту хуйню?Рекомендую подрочить сишечку или выкатиться нахуй и не создавать больше платиновые треды.
Где почитать о tcp в qt? В гугле статьи 11 года. В qtdocs тупо список функций. Есть где нибудь описание шаг за шагом?
>>1413276Если ты не понимаешь, то дело в тебе. Мне примеры заходят на ура, но я профессионал потому что.
Не добавляется qtcpsocket. Vs говорит что нет такого. Говорят что надо в proc прописать, но у меня файла такого нет
Поменял название папки, в которой лежит проект. Везде, где мог поменял название, но не могу избавиться от ошибки "QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly". Где лежит конфигурационный файл этой залупы?
>>1410219>А где удобнее гуи писать? Да еще и кроссплатформенныйИнтересует этот же вопрос. Qt - говно, ибо тянет мегабайты библиотек для хеллоуворлда и в новых версиях намеренно дропнули все винды ниже 7.wxWidgets - те же проблемы, но порог вхождения выше, зато проблем с совместимостью с некротой нет.GTK - просто тормозное говно.Borland давно не развивается. 320 килобайт на пустое окно - тоже многовато, проприетарщина..Net - не совсем C++, требует фреймворк, свежие версии не умеют в совместимость.Есть что-нибудь ещё?