Я прочитал учебники по Qt, я искал в сети, но не могу найти точный способ создания пользовательских виджетов с помощью Qt 5.8.x. В пример с этим руководство один может создавать виджеты для Qt 4.x, как я уже преуспел. Для Qt 5.8.x мне не хватает таких простых уроков.
Даже если вы используете мастер сборки в Qt для настройки таких пользовательских проектов виджетов, в итоге у вас не будет ни одной распознанной библиотеки виджетов.
Поэтому, во-первых, существует путаница с путем установки, который должен указывать make-файл при установке плагина.
В файле проекта можно найти раздел
target.path = $$[QT_INSTALL_PLUGINS]/designer
INSTALLS += target
После простой установки версии Qt 5.8.0 с открытым исходным кодом Mingw на компьютере с Windows 7 по пути C: \ Qt \ Qt5.8.0 переменная «QT_INSTALL_PLUGINS» расширится до
C: \ Qt \ Qt5.8.0 \ 5.8 \ mingw53_32 \ плагинов
таким образом, «target.path» для
make install
будет читаться как
C: \ Qt \ Qt5.8.0 \ 5.8 \ mingw53_32 \ Plugins \ дизайнер
Но на простой установке Qt 5.8.0 с mingw дизайнер ищет свои плагины в
C: \ Qt \ Qt5.8.0 \ Tools \ QtCreator \ Bin \ Plugins \ дизайнер \
Как кто-то уже предлагал мне, нужно установить переменную окружения «QT_PLUGIN_PATH», где Qt Creator, а также Qt Designer (в подкаталоге «designer») ищет свои плагины. Итак, чтобы Qt Creator по-прежнему работал должным образом, нужно иметь установить переменную окружения «QT_PLUGIN_PATH» в
Поэтому в моей среде Windows 7 я установил переменную «QT_PLUGIN_PATH» в
C: \ Qt \ Qt5.8.0 \ Tools \ QtCreator \ Bin \ плагинов; C: \ Qt \ Qt5.8.0 \ 5.8 \ mingw53_32 \ плагинов
После этого Qt Designer может найти библиотеку пользовательских виджетов сборки. Но Qt Designer не может загрузить библиотеку. Одна интересная вещь заключается в том, что дизайнер также отказывается от библиотек, предоставляемых установкой самого Qt.
«Не удалось загрузить … .dll: данная процедура не найдена»
«Не удалось загрузить … .dll: указанный модуль не найден»
Что я сделал для создания библиотеки, так это то, что я просто запустил мастер проектов, чтобы сгенерировать собственный виджет для Qt Designer. С таким сгенерированным проектом я получаю результат не загружаемой библиотеки, как упоминалось выше.
Что мне нужно изменить в файлах исходного кода / проекта, чтобы Qt Designer не смог правильно загрузить библиотеку?
Спасибо за любые подсказки или предложения!
Вы, кажется, используете компилятор MinGW.
Вы не можете создавать плагины с этим компилятором с помощью поставляемого по умолчанию Creator, так как он скомпилирован с Visual Studio 2013/2015 (в зависимости от версии Qt).
Из-за того, как библиотеки DLL работают в Windows, вы должны использовать тот же компилятор, что и Creator, скомпилированный для сборки плагина (иначе он не сможет его загрузить).
Перейдите к «About Qt Creator» в меню «Справка», чтобы проверить.
Также не забудьте собрать плагин в режиме Release.
Других решений пока нет …