Просмотр сообщений
|
Страниц: [1] 2 3 ... 66
|
1
|
Qt / Установка, сборка, отладка, тестирование / Re: Отладка очереди слотов
|
: Апрель 12, 2018, 12:22
|
Igors, да, под вызванными подразумевались слоты стоящие в очереди, то есть сигнал уже вызван, а слот ещё не отработал. QThreadData* data = QThreadData::get2( currentThread() ); QVector<QPostEvent> evs = data->postEventList; foreach ( QPostEvent ev, evs ) { if ( ev.event->type() == QEvent::MetaCall ) { QMetaCallEvent* mev = static_cast<QMetaCallEvent*>( ev.event ); QMetaMethod signal = mev->sender()->metaObject()->method(mev->signalId()); qDebug() << "Metacall:" << ev.receiver << mev->sender() << signal.methodSignature(); } } В целом вроде то, что надо, только почему-то signal.methodSignature() выдаёт неправильные данные (явно другой сигнал)…
|
|
|
3
|
Qt / Общие вопросы / Избавиться от Q_UNUSED
|
: Январь 19, 2018, 10:26
|
Начиная с какой-то версии QMutexLocker не выдаёт предупреждение о неиспользуемой переменной.
Хотел для своего класса сделать такое же поведение, но в объявлении QMutexLocker не заметил чего-то особенного, что бы позволило избавиться от Q_UNUSED.
Кто-нибудь знает, как это сделано?
|
|
|
4
|
Qt / Работа с сетью / Re: Web-клиент. На чём писать?
|
: Июнь 28, 2017, 17:27
|
Ну… Как обратная сторона к QNetworkAccessManager вполне себе решение. Но меня лично идея генерации html-я просто в текстовых строках (учитывая что гуй{вуй?} будет сравнительно сложным) не очень прельщает.
|
|
|
6
|
Qt / Работа с сетью / Web-клиент. На чём писать?
|
: Июнь 28, 2017, 12:57
|
Есть клиент-серверное приложение на Qt. Целевые платформы Windows и Linux.
Есть задача добавить Web-клиент. По сути упрощённый аналог полноценного клиента, но работающий в браузере.
Вопрос - на чём это реализовывать. Ну то есть я понимаю, что теоретически можно хоть в QTcpSocket данные HTTP/html пихать.
Но хотелось бы более удобной разработки, тем более что клиент подразумевает довольно сложные формы и т.п.
Смотрел в сторону Wt, но не уверен что это будет правильный выбор, так как никогда в этом направлении не работал.
Что посоветуете?
|
|
|
7
|
Qt / Мультимедиа / Детекция голоса - готовая библиотека
|
: Апрель 22, 2016, 15:18
|
Может кто-нибудь находил готовые хорошо работающие решения. На вход семплы за определённый промежуток времени, на выходе true/false или вероятность того, что там есть голос. Лицензию желательно совместимую не с open-source (а-ля LGPL, BSD и подобного).
|
|
|
9
|
Qt / Работа с сетью / Re: QNetworkAccessManager - другая сторона
|
: Апрель 20, 2016, 23:31
|
Наверное, тебе нужен веб-фреймворк?
Ну… По идее - это протокол удалённого вызова процедур, вроде всяких RPC и SOAP. И когда мы на запрашивающей стороне, то всё ложится в QNetworkAccessManager. А вот когда запрашивают у нас получается, что прийдётся опускаться на уровень ниже (к QTcpServer+QTcpSocket), что как-то странно.
|
|
|
10
|
Qt / Работа с сетью / QNetworkAccessManager - другая сторона
|
: Апрель 20, 2016, 17:10
|
Раньше всегда писал на уровне QTcpServer/QTcpSocket.
А тут реализоывал взаимодействие (post запросы) при помощи QNetworkAccessManager + QNetworkRequest + QNetworkReply, т.е. более высокоуровнево.
Встал вопрос: а есть ли у Qt возможность работать с другой стороны (я не нашёл), т.е. принимать QNetworkRequest'ы и отвечать QNetworkReply'ями.
Может есть проверенная сторнняя реализация?
|
|
|
11
|
Qt / Общие вопросы / Re: Создание накладной средствами Qt
|
: Август 11, 2015, 08:39
|
Я сейчас через QWebPage делаю. Вставляю в нею html-код и на печать в ПДФ файл. Только вот вопрос: а тут тогда изображение вставить? У меня все изображения в ресурсах хранятся. Может можно как-нибудь в тег IMG записать путь к изображению как-то так - :/images/myimage.png? Что QWebPage его отобразил.
Попробуйте встраивать картинки через data. В base64 Qt перегонять умеет.
|
|
|
13
|
Qt / Работа с сетью / Re: QTcpServer в Qt5.5 и IPv6
|
: Июль 22, 2015, 14:36
|
C++ (Qt) listen(QHostAddress::AnyIPv4, port )
Да, я знаю, что с AnyIPv4 работает «как раньше». Просто я и v6 соединения принимаю (хоть это и не сильно востребовано). Можно, наверно открыть 2 сервера с listen(QHostAddress::AnyIPv4, port ) и listen(QHostAddress::AnyIPv6, port ), но как -то это уж совсем костыльно. Лучше уж проверку адресов переделать, благо toIPv4Address на такие адреса работает. Лезьте в сырцы, смотрите. Не вижу смысла. Ну найду я изменения, что дальше? Патчить каждую следующую версию Qt сомнительное удовольствие. Оформил репорт, если скажут, что баг, запрещу собираться под этой версией. Если что фича - адаптирую код.
|
|
|
14
|
Qt / Работа с сетью / Re: QTcpServer в Qt5.5 и IPv6
|
: Июль 21, 2015, 14:52
|
1) QHostAddress::protocol () const
И?.. Про функцию знаю, как она мне должна помочь не знаю. C++ (Qt) QHostAddress( "127.0.0.1" ).protocol() == QAbstractSocket::IPv4Protocol QHostAddress( "::ffff:127.0.0.1" ).protocol() == QAbstractSocket::IPv6Protocol QHostAddress( "127.0.0.1" ).protocol() != QHostAddress( "::ffff:127.0.0.1" ).protocol() QHostInfo::fromName( "localhost" ).addresses() == (QHostAddress("::1"), QHostAddress("127.0.0.1")) // никакого ::ffff:127.0.0.1
|
|
|
15
|
Qt / Работа с сетью / QTcpServer в Qt5.5 и IPv6
|
: Июль 21, 2015, 13:10
|
1) Есть QTcpServer. Есть listen( QHostAddress::Any, port ).
В Qt 5.4- подключения с IPv4 приходят c адресами вида QHostAddress( "127.0.0.1" ), QHostAddress( "192.168.13.13" ).
В Qt 5.5 подключения с IPv4 приходят c адресами IPv6 вида QHostAddress( "::ffff:127.0.0.1" ), QHostAddress( "::ffff:192.168.13.13" ).
Кто знает это баг или фича? И как теперь правильно проверять, что подключение с разрешённого ip? Я могу сделать это при помощи toIPv4Address() с проверкой результата на 0, но как то уж больно это костыльно…
2) Нубский вопрос по IPv6. QHostAddress( "fe80::61f4:7c:796d:7ccc%10" ) - %10 это что? Подсеть? Со вторым вопросом разобрался. Это scopeId().
|
|
|
|
|