Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531

Установка OpenCV и Dlib в QT

07.03.2023, 15:25. Показов 7091. Ответов 80
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Начинаю переезд с консольного приложения VS в проект с QT.
у меня там были подключены две библиотеки OpenCV и Dlib

Вроде бы нашёл инструкцию как внедрить OpenCV в проект QT.
Для установки библиотеки нужен CMake он есть, но там нужно я так понял выбрать набор инструментов MinGW 32 или 64 бита. Проблема в том что я не помню какой я выбирал и выбирал ли вообще MinGW. Где мне можно в проекте QT посмотреть какой набор инструментов я выбрал 32 или 64 бит?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.03.2023, 15:25
Ответы с готовыми решениями:

Установка библиотеки dlib
Долго мучаюсь с установкой dlib http://dlib.net/compile.html. Документация не помогает. Подскажите как установить эту библиотеку.

Установка dlib ошибка
Здравствуйте, из-за чего появляется данная ошибка? C:\Users\Admin\AppData\Local\Temp\main.py>pip3 install dlib ...

Установка библиотеки dlib для Python 3х
Здравствуйте!:) Прошу Вас помочь мне! Возможно, кто-то из вас сталкивался с такой проблемой. Установлено: Python-3.6 32 bit ...

80
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 10:17  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от DrOffset Посмотреть сообщение
Должно работать уже
в том то и дело, что должно, а на практике, что-то как-то не так.


0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
20.03.2023, 10:26
SergeyKagen, пока отсюда не видно в чем именно проблема. Вот вы настроили этот (user) комплект Qt, что происходит, если вы пробуете с его использованием что-то собрать?
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 11:42  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
что происходит, если вы пробуете с его использованием что-то собрать?
а у меня не получится, что-то собрать, сборка неактивна. А когда создаётся проект появляется в дереве файлов только один файл CMakeList.txt и восклицательный знак напротив проекта. С надписью "Для этого проекта не включены комплекты". Но проблема в том, что я не могу включить комплекты так как всё серое и невыбираемое, даже тот комплект что я создал в ручную.

0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
20.03.2023, 13:05
SergeyKagen, попробуйте проект на базе qmake создать, без CMake пока.

Добавлено через 1 минуту
Вот у вас в предыдущем посте на заднем фоне диалог "настроить проект", вот там надо выбрать ваш комплект.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 15:01  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
попробуйте проект на базе qmake
ок на базе qmake он запустился. Правда с кучей предупреждений. Это нормально столько предупреждений?


и второе, я так понял у меня предыдущий проект был на базе cmake, его нужно заново создавать или есть способ открыть и поменять на qmake?
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
20.03.2023, 19:12
Цитата Сообщение от SergeyKagen Посмотреть сообщение
Это нормально столько предупреждений?
Нет, не особо. У меня такого нет. Но у меня Qt5, Qt6 нет.
Покажите лог сборки, где видно какие параметры ушли в g++.

Цитата Сообщение от SergeyKagen Посмотреть сообщение
я так понял у меня предыдущий проект был на базе cmake
Думаю, что ничего менять не надо. Нужно поставить cmake в MSYS2 и прикрутить его к сборке. Этот cmake будет знать про Qt и должен нормально собирать с ним проекты. Возможно и предупреждений не будет тогда.

Добавлено через 2 минуты
SergeyKagen, еще покажите содержимое файла \MSYS2\mingw64\share\qt6\mkspecs\win32-g++\qmake.conf.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 21:43  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Покажите лог сборки, где видно какие параметры ушли в g++.
произошла какая-то магия, я открыл программу вновь, чтобы скомпилировать попытаться найти логи (кстати я не знаю как вывести лог сборки) и ошибки ушли все. Провёл эксперимент, создал новый проект, опять ошибки появились, но если сразу скомпилировать второй раз, то ошибки уходят.

файл qmake.conf

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
include(../common/g++-win32.conf)
include(../common/windows-desktop.conf)
 
# modifications to g++-win32.conf
 
QMAKE_CC                = $${CROSS_COMPILE}gcc
QMAKE_CFLAGS            = -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj
QMAKE_CFLAGS_WARN_ON   += -Wextra
 
QMAKE_CXX               = $${CROSS_COMPILE}g++
QMAKE_CXXFLAGS            = -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj
QMAKE_CXXFLAGS_WARN_ON  = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_EXCEPTIONS_ON += -mthreads
 
QMAKE_LINK              = $${CROSS_COMPILE}g++
QMAKE_LINK_C            = $${CROSS_COMPILE}gcc
 
QMAKE_CFLAGS_LTCG       = -flto
QMAKE_CXXFLAGS_LTCG     = $$QMAKE_CFLAGS_LTCG
QMAKE_LFLAGS_LTCG       = $$QMAKE_CFLAGS_LTCG
QMAKE_LFLAGS_EXCEPTIONS_ON += -mthreads
 
load(qt_config)
cmake - я так понял это
Bash
1
$ pacman -S cmake
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
20.03.2023, 22:05
Цитата Сообщение от SergeyKagen Посмотреть сообщение
но если сразу скомпилировать второй раз
Второй раз нет компиляции. Уже скомпилированное он не перекомпилирует, если явно не попросить (через меню "пересборка"). Так что второй раз нет предупреждений, потому что второй раз нет компиляции.
Т.к. предупреждения неопасные, можно просто их заглушить, если добавить в qmake.conf ключ -Wno-attributes в переменную QMAKE_CXXFLAGS. Но лучше бы это сделать после того, как удастся понять причину.

Цитата Сообщение от SergeyKagen Посмотреть сообщение
кстати я не знаю как вывести лог сборки
Внизу "4 Вывод сборки".

Цитата Сообщение от SergeyKagen Посмотреть сообщение
я так понял это
Да.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
20.03.2023, 22:07  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Внизу "4 Вывод сборки".
23:06:42: Выполняются этапы для проекта untitled...
23:06:42: Настройки не изменились, этап qmake пропускается.
23:06:42: Запускается: «D:\msys64\mingw64\bin\mingw32-make.exe» -j12
D:\msys64\mingw64\bin\qmake6.exe -o Makefile ..\untitled\untitled.pro -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug"
D:/msys64/mingw64/bin/mingw32-make.exe -f Makefile.Debug
mingw32-make[1]: Entering directory 'D:/CPP_PROJECTS/build-untitled-Desctop_QT_User-Debug'
D:\msys64\mingw64\share\qt6\bin\uic.exe ..\untitled\mainwindow.ui -o ui_mainwindow.h
g++ -c -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../untitled -I. -I../../msys64/mingw64/include/qt6 -I../../msys64/mingw64/include/qt6/QtWidgets -I../../msys64/mingw64/include/qt6/QtGui -I../../msys64/mingw64/include/qt6/QtCore -Idebug -I. -I/include -I../../msys64/mingw64/share/qt6/mkspecs/win32-g++ -o debug\main.o ..\untitled\main.cpp
D:\msys64\mingw64\share\qt6\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN --include D:/CPP_PROJECTS/build-untitled-Desctop_QT_User-Debug/debug/moc_predefs.h -ID:/msys64/mingw64/share/qt6/mkspecs/win32-g++ -ID:/CPP_PROJECTS/untitled -ID:/msys64/mingw64/include/qt6 -ID:/msys64/mingw64/include/qt6/QtWidgets -ID:/msys64/mingw64/include/qt6/QtGui -ID:/msys64/mingw64/include/qt6/QtCore -I. -ID:/msys64/mingw64/include/c++/12.2.0 -ID:/msys64/mingw64/include/c++/12.2.0/x86_64-w64-mingw32 -ID:/msys64/mingw64/include/c++/12.2.0/backward -ID:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/12.2.0/include -ID:/msys64/mingw64/include -ID:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/12.2.0/include-fixed ..\untitled\mainwindow.h -o debug\moc_mainwindow.cpp
g++ -c -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../untitled -I. -I../../msys64/mingw64/include/qt6 -I../../msys64/mingw64/include/qt6/QtWidgets -I../../msys64/mingw64/include/qt6/QtGui -I../../msys64/mingw64/include/qt6/QtCore -Idebug -I. -I/include -I../../msys64/mingw64/share/qt6/mkspecs/win32-g++ -o debug\mainwindow.o ..\untitled\mainwindow.cpp
g++ -c -fno-keep-inline-dllexport -march=nocona -msahf -mtune=generic -Wa,-mbig-obj -g -std=gnu++1z -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../untitled -I. -I../../msys64/mingw64/include/qt6 -I../../msys64/mingw64/include/qt6/QtWidgets -I../../msys64/mingw64/include/qt6/QtGui -I../../msys64/mingw64/include/qt6/QtCore -Idebug -I. -I/include -I../../msys64/mingw64/share/qt6/mkspecs/win32-g++ -o debug\moc_mainwindow.o debug\moc_mainwindow.cpp
In file included from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:9,
from D:/msys64/mingw64/include/qt6/QtWidgets/qwidget.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qmainwindow.h:8,
from D:/msys64/mingw64/include/qt6/QtWidgets/QMainWindow:1,
from ..\untitled\mainwindow.h:4,
from ..\untitled\main.cpp:1:
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:176:38: warning: 'QDataStream& operator<<(QDataStream&, const QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
176 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &in, const QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:177:38: warning: 'QDataStream& operator>>(QDataStream&, QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
177 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &in, QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:178:32: warning: 'size_t qHash(const QKeySequence&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
178 | friend Q_GUI_EXPORT size_t qHash(const QKeySequence &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:9,
from D:/msys64/mingw64/include/qt6/QtWidgets/qwidget.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qmainwindow.h:8,
from D:/msys64/mingw64/include/qt6/QtWidgets/QMainWindow:1,
from ..\untitled\mainwindow.h:4,
from ..\untitled\mainwindow.cpp:1:
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:176:38: warning: 'QDataStream& operator<<(QDataStream&, const QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
176 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &in, const QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:177:38: warning: 'QDataStream& operator>>(QDataStream&, QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
177 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &in, QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:178:32: warning: 'size_t qHash(const QKeySequence&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
178 | friend Q_GUI_EXPORT size_t qHash(const QKeySequence &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qpixmap.h:9,
from D:/msys64/mingw64/include/qt6/QtGui/qicon.h:10,
from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:11:
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:261:38: warning: 'QDataStream& operator<<(QDataStream&, const QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
261 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &, const QColor &);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:262:38: warning: 'QDataStream& operator>>(QDataStream&, QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
262 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &, QColor &);
| ^~~~~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qpixmap.h:9,
from D:/msys64/mingw64/include/qt6/QtGui/qicon.h:10,
from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:11:
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:261:38: warning: 'QDataStream& operator<<(QDataStream&, const QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
261 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &, const QColor &);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:262:38: warning: 'QDataStream& operator>>(QDataStream&, QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
262 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &, QColor &);
| ^~~~~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qguiapplication.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qapplication.h:13,
from D:/msys64/mingw64/include/qt6/QtWidgets/QApplication:1,
from ./ui_mainwindow.h:13,
from ..\untitled\mainwindow.cpp:2:
D:/msys64/mingw64/include/qt6/QtCore/qlocale.h:1120:33: warning: 'size_t qHash(const QLocale&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
1120 | friend Q_CORE_EXPORT size_t qHash(const QLocale &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qguiapplication.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qapplication.h:13,
from D:/msys64/mingw64/include/qt6/QtWidgets/QApplication:1,
from ..\untitled\main.cpp:3:
D:/msys64/mingw64/include/qt6/QtCore/qlocale.h:1120:33: warning: 'size_t qHash(const QLocale&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
1120 | friend Q_CORE_EXPORT size_t qHash(const QLocale &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:9,
from D:/msys64/mingw64/include/qt6/QtWidgets/qwidget.h:11,
from D:/msys64/mingw64/include/qt6/QtWidgets/qmainwindow.h:8,
from D:/msys64/mingw64/include/qt6/QtWidgets/QMainWindow:1,
from debug\../../untitled/mainwindow.h:4,
from debug\moc_mainwindow.cpp:10:
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:176:38: warning: 'QDataStream& operator<<(QDataStream&, const QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
176 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &in, const QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:177:38: warning: 'QDataStream& operator>>(QDataStream&, QKeySequence&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
177 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &in, QKeySequence &ks);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qkeysequence.h:178:32: warning: 'size_t qHash(const QKeySequence&, size_t)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
178 | friend Q_GUI_EXPORT size_t qHash(const QKeySequence &key, size_t seed) noexcept;
| ^~~~~
In file included from D:/msys64/mingw64/include/qt6/QtGui/qpixmap.h:9,
from D:/msys64/mingw64/include/qt6/QtGui/qicon.h:10,
from D:/msys64/mingw64/include/qt6/QtGui/qaction.h:11:
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:261:38: warning: 'QDataStream& operator<<(QDataStream&, const QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
261 | friend Q_GUI_EXPORT QDataStream &operator<<(QDataStream &, const QColor &);
| ^~~~~~~~
D:/msys64/mingw64/include/qt6/QtGui/qcolor.h:262:38: warning: 'QDataStream& operator>>(QDataStream&, QColor&)' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
262 | friend Q_GUI_EXPORT QDataStream &operator>>(QDataStream &, QColor &);
| ^~~~~~~~
g++ -Wl,-subsystem,windows -mthreads -o debug\untitled.exe debug/main.o debug/mainwindow.o debug/moc_mainwindow.o D:\msys64\mingw64\lib\libQt6Widgets.dll. a D:\msys64\mingw64\lib\libQt6Gui.dll.a D:\msys64\mingw64\lib\libQt6Core.dll.a -lmingw32 D:\msys64\mingw64\lib\libQt6EntryPoint.a -lshell32
mingw32-make[1]: Leaving directory 'D:/CPP_PROJECTS/build-untitled-Desctop_QT_User-Debug'
23:06:44: Процесс «D:\msys64\mingw64\bin\mingw32-make.exe» завершился успешно.
23:06:44: Прошло времени: 00:03.
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
21.03.2023, 08:55
SergeyKagen, вообще это похоже на какой-то баг. Причем баг старый, и вроде как давно исправленный. Похоже, что современный gcc опять его схватил.
Incorrect warning when applying dllimport to friend function
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 10:35  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
вообще это похоже на какой-то баг.
и что делать? Просто игнорировать и жить с этим дальше?
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
21.03.2023, 12:50
Цитата Сообщение от SergeyKagen Посмотреть сообщение
Просто игнорировать и жить с этим дальше?
Да. Как проигнорировать я показал в посте #48.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 22:06  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Да. Как проигнорировать я показал в посте #48.
спасибо.

Наконец-то открылся старый проект, правда теперь у него появились предупреждения и он перестал работать. Вернее так, когда запускаю через QT он не работает, но если запускаю exe из проекта, то всё запускается как надо.

Появились предупреждения - которых раньше не было.
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
21.03.2023, 22:10
Цитата Сообщение от SergeyKagen Посмотреть сообщение
Появились предупреждения - которых раньше не было.
Компилятор новее - это нормально. Больше проблем ловит.

Цитата Сообщение от SergeyKagen Посмотреть сообщение
Вернее так, когда запускаю через QT он не работает, но если запускаю exe из проекта, то всё запускается как надо.
"Не работает" - это что означает?
У вас случайно в PATH лишнего чего (других версий компилятора, например) не прописано?
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 23:01  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
"Не работает" - это что означает?
У меня есть таймер, который запускает функцию каждую секунду. Эта функция сканирует папку на наличие картинки. Если в папке появилась картинка, он определяет её имя, и возвращает имя картинки, чтобы та открылась в окне просмотра. При запуске через QT функция таймера почему-то не вызывается, а следствие не вызывается функция поиска в папке. Если я запускаю exe-шник отдельно без QT, то картинка удачно открывается в окне, т.е. всё работает.
У меня были уже проблемы с таймером в этой ветке Невозможно найти слот. Мне вроде их помогли решить, под ту версию QT а сейчас после обновления снова таймер прекратил вызываться, правда ошибок связанных с таймером больше не появляется.


В PATH у меня две ссылки
D:\msys64\mingw64\bin
и
D:\msys64\mingw32\bin

C++ (Qt)
1
2
3
4
5
6
void MainWindow::updateTime()
{
    std::cout << "Hello";
    get_new_file = get_file_name();
    if(old_file != get_new_file){ MainWindow::strech_image(); old_file = get_new_file; }
}
т.е. я добавил cout, чтобы выводил "Hello", если функция таймера отрабатывает, но увы, функция updateTime() не вызывается, а следствие не вызывается функция get_file_name и не возвращает линк картинки.

Хотя не смотря на предупреждения с MouseButtonPress, MouseButtonDblClick, MouseButtonRelease, MouseMove эти события/функции (мышки) отрабатываются.
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
21.03.2023, 23:10
Цитата Сообщение от SergeyKagen Посмотреть сообщение
У меня есть таймер, который запускает функцию каждую секунду. Эта функция сканирует папку на наличие картинки. Если в папке появилась картинка, он определяет её имя, и возвращает имя картинки, чтобы та открылась в окне просмотра. При запуске через QT функция таймера почему-то не вызывается, а следствие не вызывается функция поиска в папке. Если я запускаю exe-шник отдельно без QT, то картинка удачно открывается в окне, т.е. всё работает.
Путь к "папке" относительный? Если да, то тут все просто - у вас при запуске из IDE рабочий каталог приложения - другой, не тот, где лежит exe.

Добавлено через 1 минуту
Цитата Сообщение от SergeyKagen Посмотреть сообщение
но увы, функция updateTime() не вызывается
Вероятнее всего в коде просто ошибки были и раньше, а работало потому, что в С++ так бывает: некорректный код иногда работает.
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 23:26  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Путь к "папке" относительный? Если да, то тут все просто - у вас при запуске из IDE рабочий каталог приложения
Ещё теперь походу iostreem не фурычит.

C++ (Qt)
1
2
3
4
5
6
    bool MainWindow::eventFilter(QObject *object, QEvent *event)
{
if(event->type() == QEvent::MouseButtonPress){
        std::cout << "Click";
    }
}
0
Покинул чат.
1133 / 728 / 195
Регистрация: 30.03.2021
Сообщений: 2,379
21.03.2023, 23:27
Цитата Сообщение от SergeyKagen Посмотреть сообщение
std::cout << "Hello";
попробуйте
#include <QDebug>
...
qDebug()<<"Hello";
внизу "вывод приложения"
0
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
21.03.2023, 23:29
SergeyKagen, в .pro
Bash
1
CONFIG += console
0
7 / 8 / 3
Регистрация: 02.04.2018
Сообщений: 531
21.03.2023, 23:32  [ТС]
Цитата Сообщение от sdf45 Посмотреть сообщение
попробуйте
#include <QDebug>
значит по ошибке я посчитал, что функция таймера не работает, сейчас проверил, работает. Каждую секунду вызывает.
Да QDebug работает, а вот cout стандартный почему перестал, не понятно. Ещё одно предупреждение помимо событий мыши

_______________
D:\msys64\mingw64\include\qt6\QtCore\qbi tarray.h:18: предупреждение: 'size_t qHash(const QBitArray&, size_t)' redeclared without dllimport attribute after being referenced with dll linkage
In file included from D:/msys64/mingw64/include/qt6/QtCore/QtCore:33,
from ..\test\mainwindow.cpp:7:
D:/msys64/mingw64/include/qt6/QtCore/qbitarray.h:18:33: warning: 'size_t qHash(const QBitArray&, size_t)' redeclared without dllimport attribute after being referenced with dll linkage
18 | friend Q_CORE_EXPORT size_t qHash(const QBitArray &key, size_t seed) noexcept;
| ^~~~~
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.03.2023, 23:32
Помогаю со студенческими работами здесь

Установка dlib под Code::Blocks
Не могу разобраться, как подключить библиотеку dlib под Code::Blocks, нужна для того чтобы ресайзить png, можете подсказать как подключить...

установка opencv
Всем привет. Пытаюсь установить и подключить opencv к VS2015 года. В последних версиях opencv нет при распаковке папки x86, а есть только...

Установка OpenCV
Всем добрый вечер. Необходимо установить библиотеку OpenCV в MS Visual Srudio 2012, пытаюсь больше часа, а результата 0. Погуглил, нашёл...

Установка opencv
Люди добрые, выручайте! Третьи сутки не могу спать и.. установить opencv Пользуюсь этим руководством https://habr.com/ru/post/318846/ ...

Установка OpenCV
Всем привет ребята помогите с установкой OpenCV2.2. CMake выдает ошибку. &quot;Error in configuration process, project files may be...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru