Russian Qt Forum
Май 03, 2024, 20:39 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 ... 3 4 [5] 6 7 ... 65
61  Qt / Общие вопросы / Русский текст Qt5.6.2 VS2015 : Ноябрь 09, 2017, 11:57
Скажите как настроить QTextCodec, чтобы в GUI элементах выводился русский текст?
Пробовал вот так
Код
C++ (Qt)
QTextCodec *codec = QTextCodec::codeFromName("UTF-8");
QTextCodec::setCodecLocale(codec);
 
Но не прокатывает.
62  Qt / Общие вопросы / Re: падает проект при использовании библиотек OpenCV 3.3.0 : Ноябрь 08, 2017, 12:56
Даже либы кидаю в папку с исполняемым файлом
Тоже не помогает В замешательстве
В дебаге выдает ошибку
Код:
During startup program exited with code 0xc0000135
63  Qt / Общие вопросы / падает проект при использовании библиотек OpenCV 3.3.0 : Ноябрь 08, 2017, 11:33
Распаковал  opencv-3.3.0-vc14.exe, получил папку opencv
Далее работаем с CMake-3.2.1-win32-x86 чтобы сгенерить makefile
Указываем пути к папкам в Browse Source и Browse Build
Жмем Configure и указываем MinGW Makefiles, выделяем Specify native compilers, жмем Next
В С      Compilers путь С:/.../Tools/mingw530_32/bin/gcc.exe
В С++ Compilers путь С:/.../Tools/mingw530_32/bin/g++.exe
Жмем Configure
Выдалось красное окошко с галочками
Убираем галочку ENABLE_PRECOMPILED_HEADERS, чтобы не в дальнейшем в процессе make не выдавалась ошибка
Код:
unknown option --W
И еще в файле
Код:
opencv/sources/modules/videoio/src/cap_dshow.cpp
перед строчкой
Код:
#include "DShow.h"
написать
Код:
#define NO_DSHOW_STRSAFE
затем идем через консоль в папку
Код:
c:\...\opencv\build
и делаем mingw32-make
затем mingw32-make install
вуаля получаем папку lib , в которой статические либы(lib_name.dll.a)

Добавляю и про-файл, вроде все норм инклюдники видит
Но при использовании opencv-шных типов и функций проект падает.

У меня Qt 5.7.0 MinGW 32bit
ОС Windows 7 64-разрядная

Помогите пожалуйста разобраться, что делаю нитак Плачущий

64  Qt / 2D и 3D графика / Re: Отрисовка в QImage : Сентябрь 02, 2017, 21:43
QPainter::drawText

Вот спасибо, а то забыл Подмигивающий
65  Qt / 2D и 3D графика / Отрисовка в QImage : Сентябрь 01, 2017, 12:12
Скажите как в QImage отрисовать цифры?
66  Qt / Model-View (MV) / Re: Поясните по поводу индексов в дереве : Август 31, 2017, 22:59
Как вы удаляйте элементы модели?
Посоле удаления вы модель обновляйте?
67  Qt / Работа с сетью / Re: Многопотчный сервер : Август 31, 2017, 18:31
Так статическая же. Создается одна при компиляции.
А потоки используют одно адресное пространство.
Да Обеспокоенный балбес я!
68  Qt / Работа с сетью / Re: Многопотчный сервер : Август 31, 2017, 14:38
Выяснил в чем ошибка.
Скажите, если есть класс потока.
В нем есть метод, в котором объявленна статическая переменная.
То для каждого экземпляра класса данная переменная будет своя или одна для всех(экземпляров класса)?
Код
C++ (Qt)
class Thread: public QThread
{
...
protected:
      void run();
 
private:
     void foo();
 
}
 
void Thread::foo()
{
 
  static int value = 0;
  ....
 
  value++;
 
}
 
void Thread::run()
{
   forever(){
      msleep(5);
      foo();
  }
 
}
 

В моем случае получилось что одна для всех экземпляров класса. Почему  Непонимающий не знаю.
Поэтому проверка и не проходила.
Хотя я думал что для каждого экземпляра класса будет своя переменная.

69  Qt / Общие вопросы / Re: QtCreator + OpenCV : Август 30, 2017, 23:39
Сделал.
Перемобрал.
 И добавил к папке где лежит exe-файл библиотеки dll.
Можно было их в принципе прописать путь к ним в PATH.
70  Qt / Многопоточное программирование, процессы / Re: Как завершить поток таймера? : Август 29, 2017, 15:59
Ну тогда другой вариант.
Делать бесконечный цикл в run запускать счетчик и считать тики.
По дрстижению каког-то значения эмитить сигнал из потока.
Но опять же - будет ли это работать правильно и успевать отрабатывать.

71  Qt / Общие вопросы / Re: QtCreator + OpenCV : Август 29, 2017, 15:29
Сделал.
Собрал.
Еще пришлось чуть - чуть подправить вот тут
Код:
I also had this issue when I compiled OpenCV3.3 source code for Qt. Then I found the hint here(https://wiki.qt.io/How_to_setup_Qt_and_openCV_on_Windows).

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ If you have the following error : ... windres.exe: unknown option -- W ...

try this : in cmake uncheck ENABLE_PRECOMPILED_HEADERS

If, in the file opencv/sources/modules/videoio/src/cap_dshow.cpp, you have the following error : 'sprintf_instead_use_StringCbPrintfA_or_StringCchPrintfA' was not declared in this scope ...

try this :put the following line: #define NO_DSHOW_STRSAFE, before the line : #include "DShow.h"

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

в про-файле прописал либы
Код:
NCLUDEPATH += "C:\Qt\Qt5.7.0\opencv\build\include"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_calib3d330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_core330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_dnn330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_features2d330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_imgcodecs330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_imgproc330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_ml330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_objdetect330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_shape330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_stitching330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_superres330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_video330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_videoio330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_videostab330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_photo330.dll.a"
LIBS += "C:/Qt/Qt5.7.0/opencv/build/lib/libopencv_highgui330.dll.a"

Компилится норм.
Но почемуто при запуске программа падает при использовании opencv функций Непонимающий

Код
C++ (Qt)
#include <opencv/cv.h>
#include <opencv/cvwimage.h>
#include <opencv2/imgcodecs.hpp>
#include <opencv/highgui.h>
#include <opencv2/highgui.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/opencv_modules.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/imgproc.hpp>
 
MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   ui->setupUi(this);
 
   IplImage *img = cvLoadImage("D:\picture.jpg");
   cvNamedWindow("Hello, Qt! From OpenCv");
   cvShowImage("Hello, Qt! From OpenCV!",img);
   cvWaitKey();
 
}
 
MainWindow::~MainWindow()
{
   delete ui;
}
 
72  Qt / Многопоточное программирование, процессы / Re: Как завершить поток таймера? : Август 29, 2017, 15:12
to ssoft: Ну, там надо в конструкторе moveToThread(this) дописать и тогда будет работать нормально Веселый

А так это извечная проблема потоков. Я кстати так до сих пор их и не осилил. К примеру, как правильно остановить событийный QThread ( где в run exec()).
Смеющийся да согласен забыл написать Строит глазки
Код:
moveToThread(this)
73  Qt / Многопоточное программирование, процессы / Re: Как завершить поток таймера? : Август 29, 2017, 08:20
Думаю должно работать норм Строит глазки
*.h
Код
C++ (Qt)
class Thread : public QThread
{
   Q_OBJECT
 
public:
    Thread(QObject*parent = 0);
    virtual ~Thread();
 
public slots:
    void timeOut();
 
protected:
    void run();
}
 

*.cpp
Код
C++ (Qt)
Thread::Thread(QObject*parent): QThread(parent)
{
}
 
Thread::~Thread()
{
}
 
void Thread::run()
{
    QTimer timer;
    // Qt::DirectConnection чтобы слот обрабатывался в контексте того потока из которого был выслан сигнал
    connect(&timer,SIGNAL(timeout()),this,SLOT(timeOut()),Qt::DirectConnection);
    timer.start(50);
    exec();
}
 
void Thread::timeOut()
{
// do something
}
 

создаем и запускаем поток
Код
C++ (Qt)
void Widget::createThread()
{
   if(thread == NULL){
       thread = new Thread(0);
       thread->start();
   }
}
 

завершение потока
Код
C++ (Qt)
 
void Widget::quitThread()
{
    if(thread != NULL){
        thread->quit();
        thread->wait();
        delete thread; //thread->deleteLater();
        thread = NULL;
   }
}
 
 
74  Qt / Общие вопросы / Re: QtCreator + OpenCV : Август 29, 2017, 06:38
Вон в гугле пишут, там нужна "своя" версия mingw для сборки. Погуглите, вроде темы отмечены как решённые.
Интересно, что значит своя?
Какой в креаторе был mingw такой и использовал.
75  Qt / Многопоточное программирование, процессы / Re: Как завершить поток таймера? : Август 28, 2017, 23:17
А какая  задача стоит перед Вами?
Страниц: 1 ... 3 4 [5] 6 7 ... 65

Страница сгенерирована за 0.172 секунд. Запросов: 23.