Size: a a a

2020 June 05

M

Mr.Mait in Qt
У Qt есть очень много хороших примеров
источник

M

Mr.Mait in Qt
Ian Mcewan
Товарищи, кто-нибудь знает какую версию формата надо указывать в конструкторе QPicture, что она распознавалась всеми версиями Qt 5 ? Пробовал 7, как в доках, но что-то пошло не так
источник

M

Mr.Mait in Qt
Попробуй так QPicture(QDataStream::Qt_5_0)
источник

IM

Ian Mcewan in Qt
Mr.Mait
Попробуй так QPicture(QDataStream::Qt_5_0)
Спасибо. Я по докам никогда не догадался бы что речь идёт о QDataStream
источник

IM

Ian Mcewan in Qt
Мутно написано
источник

M

Mr.Mait in Qt
Ian Mcewan
Спасибо. Я по докам никогда не догадался бы что речь идёт о QDataStream
Вон в коде используется текущая major версия QDataStream https://code.woboq.org/qt5/qtbase/src/gui/image/qpicture.cpp.html#mfhdr_maj
И чуть ниже конструктор, который сверяет с текущей версией Qt
источник

IM

Ian Mcewan in Qt
Mr.Mait
Вон в коде используется текущая major версия QDataStream https://code.woboq.org/qt5/qtbase/src/gui/image/qpicture.cpp.html#mfhdr_maj
И чуть ниже конструктор, который сверяет с текущей версией Qt
Исходники открывал но не досмотрел на значение этой переменной. Спасибо большое)
источник

Т8

Т-34 85 in Qt
Есть ли в последних версиях Qt 5 встроенные возможности для ведения лог-файлов? Или всё равно придётся взять/написать отдельную либу?
источник

M

Mr.Mait in Qt
Т-34 85
Есть ли в последних версиях Qt 5 встроенные возможности для ведения лог-файлов? Или всё равно придётся взять/написать отдельную либу?
С небольшим допиливанием.
* qSetMessagePattern для форматирования, в документации указаны все виды паттернов.
* qInstallMessageHandler устанавливает свой хандлер сообщений
В этом хандлере вызывай
 const QString msg = qFormatLogMessage(type, context, message);

чтобы отформатировать сообщение. Там внутри присутствует мьютекс
* А дальше просто пишешь в файл. Можешь даже отдать отформатированное сообщение в очередь потока и там в файл. Просто это особенность qFormatLogMessage и context. Его нельзя вызывать в другом потоке, можно в том потоке, где был вызван qDebug и тому подобное.
* Можно включать или отключать уровни отладочных сообщений так
QLoggingCategory::defaultCategory()->setEnabled(QtMsgType type, bool enable);

Но увы, qFatal нельзя отключить, он будет вызываться всегда.
источник

Т8

Т-34 85 in Qt
Mr.Mait
С небольшим допиливанием.
* qSetMessagePattern для форматирования, в документации указаны все виды паттернов.
* qInstallMessageHandler устанавливает свой хандлер сообщений
В этом хандлере вызывай
 const QString msg = qFormatLogMessage(type, context, message);

чтобы отформатировать сообщение. Там внутри присутствует мьютекс
* А дальше просто пишешь в файл. Можешь даже отдать отформатированное сообщение в очередь потока и там в файл. Просто это особенность qFormatLogMessage и context. Его нельзя вызывать в другом потоке, можно в том потоке, где был вызван qDebug и тому подобное.
* Можно включать или отключать уровни отладочных сообщений так
QLoggingCategory::defaultCategory()->setEnabled(QtMsgType type, bool enable);

Но увы, qFatal нельзя отключить, он будет вызываться всегда.
Спасибо, попробую. Правда, мне казалось, что это будет немного более высокоуровнево
источник

M

Mr.Mait in Qt
Ну и на последок, если захотеть быстро переключиться с файла на вывод в консоль, то писать туда
 QTextStream stream(stderr);
источник

AS

Anatoly Shirokov in Qt
Т-34 85
Есть ли в последних версиях Qt 5 встроенные возможности для ведения лог-файлов? Или всё равно придётся взять/написать отдельную либу?
логирование ведется стандартными средствами https://doc.qt.io/qt-5/qloggingcategory.html, если надо какой-то спецлог в файл, то через установку своего qInstallMessageHandler. например, я писал для syslog адаптер под Linux
источник

M

Mr.Mait in Qt
Anatoly Shirokov
логирование ведется стандартными средствами https://doc.qt.io/qt-5/qloggingcategory.html, если надо какой-то спецлог в файл, то через установку своего qInstallMessageHandler. например, я писал для syslog адаптер под Linux
источник

AS

Anatoly Shirokov in Qt
это давно было
источник

E

Evilenzo in Qt
Заметил, что в мессенджерах, которые я использую, мой ник имеет одинаковый цвет, при том, что в некоторых протоколах даже нет функции передачи цвета никнейма. Так вот может есть какая-то функция вычисления цвета из текста? Или это бред? Я, например, видел ИИ, который определяет цвет литературных произведений, так почему такого не может быть для небольших никнеймов?
источник

SM

Stoian Minaiev in Qt
А что за ОСь?
источник

VS

Vladimir Suisei in Qt
Поясните за QPointer.
Т.е. если я сделаю delete на объект, на который он указывает, то он станет null?
Но как инфа об удалении до него доходит?
источник

RG

Renat Garaev in Qt
Stoian Minaiev
А что за ОСь?
Desktop. Я в linux создал проект
источник

SM

Stoian Minaiev in Qt
Что за дистрибутив?
источник

МВ

Макс Воробьев... in Qt
Vladimir Suisei
Поясните за QPointer.
Т.е. если я сделаю delete на объект, на который он указывает, то он станет null?
Но как инфа об удалении до него доходит?
у QObject есть сигнал, который вызывается при удалении
источник