Последнее обновление:
August 28, 2017

Есть мысль... Жми, напиши!
Qt

  • Рубрик нет

QtWebEngine -зависимости или не отображается при запуске скомпилированного бинарника из операционки.

Решил тут хелп для очередной проги запилить в формате html, так как удобнее создавать.
Ну и для отображения был выбран QtWebEngine, написал простейший примерчик:
(Кому нужно просто решить проблему — в самый конец)
*.pro
QT += webengine
main.cpp
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QtWebEngine>
#include <QDebug>

int main(int argc, char *argv[])
{
qDebug()<<"MAIN";
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine; […]

Views :

689

Qt Android JNI преобразование QByteArray в jbytearray и обратно, а так же получение и передача в jni функцию

Подребовалось мне из Java класса вызвать функцию, наподобии этой:
public int send(byte[] data)
{
….
}

Ну а что бы её вызвать из C++ нужно было преобразовать QByteArray в jbytearray
делается это так:
jbyteArray QByteArray2jbyteArray(QByteArray buf)
{
QAndroidJniEnvironment env;
jbyteArray array = […]

Views :

330

Печатаем на фискальнике Custom VKP-80K из c++ на Qt

В общем задача была разобраться с печатью именно фискалки, благо с обычной печатью всё просто, попробуем теперь с ним.
Т.к. дела раньше с фискальниками почти не имел, ссался, что в нём уже стоит ЭКЛЗ и все мои тестовые продажи Нидерландов уйдут в память, а потом при проверке налоговая не досчитается несколько ВВП,
но всё оказалась проще, ЭКЛЗ […]

Views :

444

Qt Получение цвета пикселя экрана/окна (get pixel screen ).

Инклуды:
#include <QApplication>
#include <QPixmap>
#include <QDesktopWidget>
ну и
#include
QPixmap *p = new QPixmap;
QDesktopWidget * descktop = QApplication::desktop();
*p = QPixmap::grabWindow(descktop->winId());
QImage *img = new QImage;
*img = p->toImage();
QRgb b = img->pixel(800,350);
QColor *c = new QColor;
c->setRgb(b);
qDebug() << c->name();

Views :

430

QStringList to QVariantList или приведение QList to QList

В общем потребовалось однажды множество разношёрстных QList<> привести к QVariantList (а он просто QList<QVariant>)
что бы не бегать циклом, воспользуемся итераторами.
QVariantList variants;
QStringList strings;
qCopy(strings.begin(), strings.end(), variants.begin());
Это работает, потому что у QVariant есть конструкторы и для QString и для int и для множества всего. См. доку по QVariant
Вот как то так =)

Views :

491

Qt 5.5 zip архивы zip/unzipped (аналог QuaZIP)

В Qt 5.5 и предыдущих есть замечательный «родной» (ну почти) класс для работы с zip архивами.
На самом деле он используется для каких-то внутренних нужд (и даже вроде бы хотят в паблик вынести), но ничего не мешает нам сейчас самим использовать эти классы:
Из папки установки Qt \qtbase\src\gui\text   копируем к себе в проект
qzipwriter_p.h
qzipreader_p.h
qzip.cpp
в файле *.pro проекта добавляем
LIBS […]

Views :

562

Использование Q_PLUGIN_METADATA FILE «jsonfile.json»

Для плагинов не хотелось городить костылей по хранению и подключению метаинформаци, когда уже есть прекрасный способ —
в Q_PLUGIN_METADATA  можно прописать FILE «myplugin.json» и в неём хранить всё необходимое.
Но как ни странно, в документации по получению информации не оказалось…
Пример файла myplugin.json
{
"Name": "Credits",
"Descr": "Credits manager",
"Version": "0.0.1"
}
Т.е. обычный […]

Views :

819

Установка Qt5 на старые верcии ubuntu

Пишу достаточно специфичный софт, поэтому иногда тесно связан рамками одной операционной системы.
На этот раз мне досталась Ubuntu 8.0 под которую нужно было скомпилить  созданное приложение.
Компиляция в 14.10 естественно не подходила, так как была ну просто куча неудовлетворённых зависимостей к которым я вообще не знал с какой стороны подступится.
Решил поставить Qt и прямо на месте скомпилировать.
Но […]

Views :

476

C++ Битовые операции. Установить значение определённого бита

До этого почему-то использовал отдельно сброс и установку битов по позиции. Сейчас собрал в одну функцию.
//— Set bit value by pos
void setBit(uchar &var, uchar pos, bool val)
{
var = (var & ~ (1<<pos)) | (val << pos);
}

Views :

554

OpenCV 3.1 захват видео с камеры в Qt 5.6

Надеюсь, компиляция прошла успешно =)
Создаём новый консольный проект, в .pro файле дописываем:
INCLUDEPATH += "/usr/local/opencv/3.1/include/"
LIBS += -L"/usr/local/opencv/3.1/lib/"
LIBS += -lopencv_core \
-lopencv_features2d \
-lopencv_highgui \
-lopencv_imgcodecs \
-lopencv_imgproc \
[…]

Views :

3867